Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.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
使用dt.AsEnumerable()中的from DataRow dRow在C#NET中创建一个不同的有序列表_C#_Asp.net_.net_.net 4.5_.net Framework Version - Fatal编程技术网

使用dt.AsEnumerable()中的from DataRow dRow在C#NET中创建一个不同的有序列表

使用dt.AsEnumerable()中的from DataRow dRow在C#NET中创建一个不同的有序列表,c#,asp.net,.net,.net-4.5,.net-framework-version,C#,Asp.net,.net,.net 4.5,.net Framework Version,我有以下代码,但在如何维护订单方面存在问题: var cars = (from DataRow dRow in dt.AsEnumerable() select new { Car = dRow["Car"], CarId = dRow[&

我有以下代码,但在如何维护订单方面存在问题:

var cars = (from DataRow dRow in dt.AsEnumerable()
                            select new
                            {
                                Car = dRow["Car"],
                                CarId = dRow["CarId"],
                                CarOrder = dRow["CarOrder"]
                            }).Distinct();
distinct运行良好,但我需要保留从1到X(上升)的顺序

DataTable dt正确地将它们按顺序排列,但是当它碰到这个不同的代码时,顺序不会被保留

我正在试图找出如何使用OrderBy子句。

根据

它返回源中唯一项的无序序列

这意味着秩序不会得到维护。因此,您可以在
Distinct()
之后执行
OrderBy()
,如下所示:

var cars = (from DataRow dRow in dt.AsEnumerable()
            select new
            {
                Car = dRow["Car"],
                CarId = dRow["CarId"],
                CarOrder = dRow["CarOrder"]
            }).Distinct().OrderBy(x => x.CarOrder);

请看:

我不明白这个问题。您在使用
OrderBy()
(或查询语法
OrderBy
)时遇到问题?发生了什么?您现有的代码不能保证任何订购。如何在CarOrder上使用OrderBy和Distinct?我不确定如何使用它。在您的独特呼叫后添加
.OrderBy
。你知道OrderBy是如何工作的吗?我想你需要回去学习LINQ是如何工作的。无法将字符串参数传递给OrderBy。请读一些书。你的名声是我的两倍,所以我希望你已经这么做了。这能回答你的问题吗?