中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LINQ如何橫向對比foreach

發布時間:2021-12-01 16:17:05 來源:億速云 閱讀:185 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關LINQ如何橫向對比foreach,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1 引言

首先來看看,這個List轉換雙方的本來面目,以一個常見的User類為例而言,User類代表了Model層的實體類,其定義為:

    // Release : code10, 2009/05/06
   // Author  : Anytao, http://www.51cto.com    public class User
    {        public int ID { get; set; }        public string FirstName { get; set; }
    public string SecondName { get; set; }        public int Age { get; set; }    }

而Account類,則代碼了Business Object層的業務類,其定義為:

    // Release : code10, 2009/05/06
    // Author  : Anytao, http://www.51cto.com
public class Account    {        public int ID { get; set; }
public string Name { get; set; }        public int Age { get; set; }    }

那么一件重要的事情,就是如何完成二者之間的轉換,尤其是,類似于List到List這樣的轉換,是常常發生在業務處理的實際操作中。關于二者的區別,屬于設計方面的論題,不是本文關注的對象。

2 本來的實現---想起來就是foreach

好了,典型的List轉換,我們固有思維中想到的就是循環了,所以我想都沒想就實現了下面的處理過程:

        // Release : code10, 2009/05/06
         // Author  : Anytao, http://www.51cto.com
        public List GetAccounts(Listusers)
 {            List accounts = new List();
             foreach (User item in users)
           {                Account account = new Account();
              account.ID = item.ID;
             account.Name = item.FirstName + item.SecondName;
                account.Age = item.Age;
                accounts.Add(account);            }
             return accounts;        }

固有的思維并沒有錯,程序和處理誠如以往一樣值得回味。但是,忘卻和前進同樣重要,所以我忘了用最簡單的辦法來更優雅的處理這一操作。

3 改進的方式---LINQ真的來了

LIQN來了,就不要吝嗇自己的武器,對于相同的代碼需求,優雅和簡潔永遠是值得追求的感覺,所以值得看似經典的代碼,其實還可以更好:

// Release : code10, 2009/05/06
// Author  : Anytao, http://www.51cto.com
 public List GetAccounts(Listusers)
   {  var result = from item in users
             select new Account
          {      ID = item.ID,
Name = item.FirstName + item.SecondName,
    Age = item.Age   };
   return result.ToList();        }

改善就這么一點點,以LINQ方式實現的“智能”轉換,看起來更美,不是嗎。

關于“LINQ如何橫向對比foreach”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大同县| 当雄县| 枣庄市| 舒城县| 阜新市| 阿克陶县| 吉水县| 铁岭县| 石棉县| 成武县| 垣曲县| 双鸭山市| 岳阳市| 临泽县| 尚义县| 涡阳县| 肇州县| 咸丰县| 定南县| 麻城市| 宜黄县| 江都市| 和龙市| 义马市| 黑河市| 武安市| 雅江县| 宣城市| 文化| 丰都县| 保康县| 河北区| 珠海市| 桦甸市| 鹤山市| 遵化市| 凤阳县| 平南县| 崇文区| 岢岚县| 沅江市|