Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# LINQ顺序按日期降序排列的对象集合_C#_Linq_Entity Framework - Fatal编程技术网

C# LINQ顺序按日期降序排列的对象集合

C# LINQ顺序按日期降序排列的对象集合,c#,linq,entity-framework,C#,Linq,Entity Framework,我有一堆对象(产品),我想先按创建日期降序排列,然后只显示前10条记录。 创建日期(DateTime)的格式如下所示 4/4/2007 12:00:00 AM 这就是我尝试过的 如何按日期降序排列前10名 var productLatestReleases = (from p in visualsProduct from pf in p.DomainObjectFields

我有一堆对象(产品),我想先按创建日期降序排列,然后只显示前10条记录。 创建日期(DateTime)的格式如下所示

4/4/2007 12:00:00 AM
这就是我尝试过的

如何按日期降序排列前10名

var productLatestReleases = (from p in visualsProduct
                                 from pf in p.DomainObjectFields
                                 select p).Distinct().OrderByDescending(d => d.DateCreated).Take(10); 

由于您正在描述日期的格式,因此我假设
DateCreated
属性的数据类型是
string
。如果是,您可以:

.OrderByDescending(d => Convert.ToDateTime(d.DateCreated)).Take(10)

另外,如果不指定要比较的等式,您的
Distinct()
将不会有太大影响。

当前查询有什么问题?您面临的问题是什么…?该查询似乎是正确的。您得到了什么结果?为什么查询
p.DomainObjectFields
?你不需要它。整个过程可以缩短为
visualproduct.Distinct().OrderByDescending(p=>p.DateCreated)。Take(10)
您不能使用LINQ to实体指定自定义相等比较器,因为不支持
Distinct(comparer)
。好的,我明白您的意思。我猜想,通过查看标记,可以隐式地使用Linq to实体。很抱歉。