日期:2014-05-17  浏览次数:21126 次

一个Linq 问题
有一个实体:
ContactUser:
字段有:ID(int),Name(string),FName(string),Contact(string)
有一个List<ContactUser>,我想把List<ContactUser>里面的Name和FName都取出来放在一个List<string>里面
而且Name 不能为空,FName也不能为空。。。Name和FName不能重复。。

假如:分别对应上面的字段
      1,"xiao","",""
      2, "li", "xiao",""
      3,  "XK","LI",""
那取出来的List<string>就是:
xiao
li
XK
LI


linq list

------解决方案--------------------
            var ary = list.Select(T => T.Name).Union(list.Select(T => T.FName)).Distinct().Where(t =>t!=null&& t.Trim() != "").ToList();

------解决方案--------------------
var list =ContactUser.Select(c=>c.Name + "$" + c.FName).SelectMany(c=>c.Split('$')).Where(c=>!String.IsNullOrEmpty(c)).Distinct().ToList();