var list = (from t in ctn.Items
where t.DeliverySelection == true && t.Delivery.SentForDelivery == null
orderby t.Delivery.SubmissionDate
select t).Take(5);
var list = (from t in ctn.Items
where t.DeliverySelection == true && t.Delivery.SentForDelivery == null
orderby t.Delivery.SubmissionDate
select t).Take(5);
var list = (from t in ctn.Items
where t.DeliverySelection == true && t.Delivery.SentForDelivery == null
orderby t.Delivery.SubmissionDate
select t).Take(5).ToList();
6条答案
按热度按时间z9zf31ra1#
tv6aics12#
解决方案:
fivyi3re3#
这也可以使用LINQ的基于lambda的方法来实现;
u5rb5r594#
这也可以使用LINQ fluent syntax来实现:
请注意,此LINQ语句中出现的每个方法(
Where
、OrderBy
、Take
)都将lambda expression作为参数。还要注意,Enumerable.Take
的文档开头是:返回从序列开始的指定数目的连续元素。
4ktjp1zp5#
Additional information
有时需要将模型绑定到视图模型中,并给予类型转换错误。在这种情况下,您应该使用
ToList()
方法。axkjgtzd6#
我只是觉得你可能对顺序From->Where->Select不熟悉,就像在SQL脚本中一样,它就像Select->From->Where。
但你可能不知道,在SQL引擎内部,它也是按照'From->Where->Select'的顺序进行解析的。要验证它,您可以尝试一个简单的脚本,
这行不通原因是引擎会在Select之前解析Where,所以不会知道where中的别名
i
。要想让这个工作顺利进行,你可以试试