国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

List.Select按字符串選擇屬性

2019-11-17 02:36:17
字體:
來源:轉載
供稿:網友

List.Select按字符串選擇屬性

不知道大家有沒有遇到這樣的情況:List使用Lambda表達式的時候,想要選擇項的某個屬性列。

例如,選擇編號ID:

1 var idList=list.Select(o=>o.ID).ToList();

又,想要選擇名稱:

1 var nameList=list.Select(o=>o.Name).ToList();

可否將其抽象呢?下面是我的方法。

 1         public List<TR> GetPRoperty<TS, TR>(List<TS> TSource, string propertyName) 2         { 3             List<TR> TResult = null; 4             if (TSource != null && TSource.Count > 0) 5             { 6                 var properties = TSource[0].GetType().GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance); 7                 if (properties != null) 8                 { 9                     System.Reflection.PropertyInfo property = properties.FirstOrDefault(o => o.Name == propertyName);10                     if (property != null)11                     {12                         TResult = TSource.Select(o => (TR)property.GetValue(o, null)).ToList(); //轉換可自行處理。此處為了簡單起見。13                     }14                 }15             }16             return TResult;17         }

調用時傳入輸入、輸出類型即可。

以上是本人臆想,如有更好方式,歡迎交流。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乌鲁木齐县| 卓尼县| 望城县| 红安县| 诸城市| 滨州市| 洞头县| 增城市| 瑞丽市| 化隆| 淳化县| 营口市| 深水埗区| 静乐县| 兴义市| 屯昌县| 晴隆县| 丹阳市| 鹤壁市| 舟山市| 措勤县| 光泽县| 恩平市| 金阳县| 顺义区| 定南县| 波密县| 青神县| 昂仁县| 县级市| 阿合奇县| 霸州市| 施甸县| 武汉市| 府谷县| 临江市| 镇坪县| 宜川县| 西盟| 肃宁县| 阿拉尔市|