3 回答

TA貢獻1843條經驗 獲得超7個贊
就像上面鏈接的Visual C#程序管理器所說,在某些情況下,With語句更有效,他給出了一個示例,該示例被用作重復訪問復雜表達式的簡寫形式。
使用擴展方法和泛型,可以通過添加如下內容來創建與With語句大致等效的內容:
public static T With<T>(this T item, Action<T> action)
{
action(item);
return item;
}
以一個簡單的示例說明如何使用它,使用lambda語法,然后可以使用它來更改如下內容:
updateRoleFamily.RoleFamilyDescription = roleFamilyDescription;
updateRoleFamily.RoleFamilyCode = roleFamilyCode;
對此:
updateRoleFamily.With(rf =>
{
rf.RoleFamilyDescription = roleFamilyDescription;
rf.RoleFamilyCode = roleFamilyCode;
});
在這樣的示例中,唯一的好處也許是布局更好,但是具有更復雜的引用和更多屬性,它很可能為您提供更具可讀性的代碼。
- 3 回答
- 0 關注
- 450 瀏覽
添加回答
舉報