亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

與C#中的塊等效嗎?

與C#中的塊等效嗎?

千巷貓影 2019-12-03 15:11:52
我知道VB.Net,正在嘗試重新學習C#。C#中是否有一個With塊等效項?
查看完整描述

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;

          });

在這樣的示例中,唯一的好處也許是布局更好,但是具有更復雜的引用和更多屬性,它很可能為您提供更具可讀性的代碼。


查看完整回答
反對 回復 2019-12-03
  • 3 回答
  • 0 關注
  • 450 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號