首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

Linq查询List<T>无值解决思路

2012-03-14 
Linq查询ListT无值ListWisesoft.Tool.Log.Model.LoginLogInfo listLog new ListWisesoft.Tool.Log.

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类型是匿名类的集合

热点排行