Ela*_*nda -1 c# sql linq linq-to-entities entity-framework
我想使用linq to Entities来提供top按降序列排序的记录Value1.
我知道我写的像:
MyCollection.OrderByDescending(item => item.Value1).FirstOrDefault();
但是我该如何使用以下方法Top呢?
System.Data.Objects.ObjectQuery.Top(string,params System.Data.Objects.ObjectParameter [])
编辑:这个答案是在问题专门针对LINQ to SQL 时编写的.
System.Data.Objects据我所知,它用于实体框架而不是LINQ to SQL - 但要在LINQ to SQL或LINQ to Objects中找到前N个值,通常只需使用Take:
var query = db.Customers
.OrderByDescending(c => c.Value1)
.Take(10);
Run Code Online (Sandbox Code Playgroud)
(我真的鼓励你尝试使用比Value1... 更有意义的名字...)
编辑:即使在实体框架中,我通常Take在LINQ查询中使用- 它是表示前N个结果的"LINQ方式".如果你真的,真的想要使用Top,那么文档提供了一些例子 - 但你应该考虑为什么要使用Top而不是Take.(你没有给我们任何背景.)