LINQ/Projection-如何按每个TableB的非FK列id/名称字段对TableA排序?
如何使用LINQ/Projection对包含引用表/对象B(B包含id和名称)的id字段的对象列表进行排序 我想按B.name对包含B的对象列表进行排序 模型(伪) 基本上,寻找与此等价的(使用上面的投影连接或OrderBy):LINQ/Projection-如何按每个TableB的非FK列id/名称字段对TableA排序?,linq,asp.net-mvc-3,linq-to-sql,Linq,Asp.net Mvc 3,Linq To Sql,如何使用LINQ/Projection对包含引用表/对象B(B包含id和名称)的id字段的对象列表进行排序 我想按B.name对包含B的对象列表进行排序 模型(伪) 基本上,寻找与此等价的(使用上面的投影连接或OrderBy): var q1= 从数据库中的 将b加入db.b中,a的出价等于b的出价 orderby b.Name/您正在寻找与上面已经编写的LINQ查询等价的查询,只是它基于扩展方法,我说的对吗 在这种情况下,应采取以下措施: var list = db.As.Where(a =&
var q1=
从数据库中的
将b加入db.b中,a的出价等于b的出价
orderby b.Name/您正在寻找与上面已经编写的LINQ查询等价的查询,只是它基于扩展方法,我说的对吗
在这种情况下,应采取以下措施:
var list = db.As.Where(a => a.BId.HasValue)
.Join(db.Bs, a => a.BId.Value, b => b.BId, (a, b) => new { a, b.Name })
.OrderBy(r => r.Name)
.Select(r => r.a);
我还添加了一个检查,以确保a.BId在获取其值之前不为null
只是好奇:为什么不能使用LINQ查询(唯一的区别是选择a而不是c)?太棒了!主要是为了兴趣,看看是否有表现上的差异。很酷,再次感谢!顺便说一句,“c”是一个打字错误,应该是一个“a”。
var list = db.As.OrderBy(x => x.BId->References.Name); // Way wrong but using something similar
return(list.ToList()
var q1 =
from a in db.As
join b in db.Bs on a.BId equals b.BId
orderby b.Name // <- Need this to sort by B's name
select c;
var list = db.As.Where(a => a.BId.HasValue)
.Join(db.Bs, a => a.BId.Value, b => b.BId, (a, b) => new { a, b.Name })
.OrderBy(r => r.Name)
.Select(r => r.a);