日期:2014-05-20  浏览次数:20675 次

Linq查询List<T>无值
List<Wisesoft.Tool.Log.Model.LoginLogInfo> listLog = new List<Wisesoft.Tool.Log.Model.LoginLogInfo>();

  Wisesoft.Tool.Log.Model.LoginLogInfo model = new Wisesoft.Tool.Log.Model.LoginLogInfo();
  model.ID = 1;
  model.EmpName = "zengk";
  listLog.Add(model);

  Wisesoft.Tool.Log.Model.LoginLogInfo model2 = new Wisesoft.Tool.Log.Model.LoginLogInfo();
  model2.ID = 2;
  model2.EmpName = "zengk2";
  listLog.Add(model2);


  Wisesoft.Tool.Log.Model.LoginLogInfo model3 = new Wisesoft.Tool.Log.Model.LoginLogInfo();
  model3.ID = 3;
  model3.EmpName = "zengk3";
  listLog.Add(model3);

  var name = from p in listLog where p.ID == 2 select p.EmpName;

我查询出来的Name一直为空

------解决方案--------------------
var names = (from p in listLog where p.ID == 2 select p.EmpName).ToList();
------解决方案--------------------
var names = (from p in listLog where p.ID == 2 select p.EmpName).FirstOrDefault();

如果ID是唯一的,建议你这样写:

var names = (from p in listLog where p.ID == 2 select p.EmpName).SingleOrDefault();
------解决方案--------------------
查询出来的name不是为空
而是name类型是匿名类的集合