c# – Linq语法 – 选择多个列

这是我使用我的实体模型的我的Linq语法

IQueryable<string> objEmployee = null;
  objEmployee = from res in _db.EMPLOYEEs
  where (res.EMAIL == givenInfo || res.USER_NAME == givenInfo)
  select res.EMAIL;

如何选择多个列?喜欢我也想选择res.ID。我怎么能收到那些? IQueryable不会工作我想。
这就是Linq to SQL – 对吧?

如其他答案所示,您需要使用匿名类型。

就语法而言,我个人更喜欢方法链接。方法链接等价物将是: –

var employee = _db.EMPLOYEEs
    .Where(x => x.EMAIL == givenInfo || x.USER_NAME == givenInfo)
    .Select(x => new { x.EMAIL, x.ID });

AFAIK,声明性LINQ语法在编译时转换为类似于此的方法调用链。

更新

如果你想要整个对象,那么你只需要省略对Select()的调用,即

var employee = _db.EMPLOYEEs
    .Where(x => x.EMAIL == givenInfo || x.USER_NAME == givenInfo);
http://stackoverflow.com/questions/6772267/linq-syntax-selecting-multiple-columns

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:c# – Linq语法 – 选择多个列