C# 如何用查询语法编写Take(1)
是否可以编写C# 如何用查询语法编写Take(1),c#,linq,entity-framework,take,C#,Linq,Entity Framework,Take,是否可以编写IQueryable=query.Take(1)或LINQ查询语法中的等效内容。我使用的是C#5和EF 5。不。你必须使用点语法进行操作。同样的情况也适用于ToList、Count等 var query = (from item in list where predicate(item) select func(item)) .Take(10); 在C#中LINQ的查询表达式语法中没有与Take等价的语法。唯一具有查询表达式等价项的方法是 Whe
IQueryable=query.Take(1)
或LINQ查询语法中的等效内容。我使用的是C#5和EF 5。不。你必须使用点语法进行操作。同样的情况也适用于ToList
、Count
等
var query =
(from item in list
where predicate(item)
select func(item))
.Take(10);
在C#中LINQ的查询表达式语法中没有与Take等价的语法。唯一具有查询表达式等价项的方法是
Where,
Select,
SelectMany,
Join,
GroupJoin,
OrderBy,
OrderByDescending,
ThenBy,
ThenByDescending,
GroupBy,
Cast
这是本规范§7.16.2中的内容。不幸的是,C#没有VB那么多的语言内Linq关键字,但您可以通过添加
。跳过(n)。最后取(m)
。@TimSchmelter oh cool。出于好奇,VB.NET中的语法是什么?Take
实现了查询,它应该与逻辑查询分开。@Steaks:在查询Take 2中的r
(skip的工作原理类似)除了Take之外,VB还添加了Distinct、Aggregate、Count、Sum作为关键字。我不知道有一个可枚举的.GroupJoin
!