Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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#和实体框架中的排序字符串_C#_Entity Framework_Sorting - Fatal编程技术网

C#和实体框架中的排序字符串

C#和实体框架中的排序字符串,c#,entity-framework,sorting,C#,Entity Framework,Sorting,我有一个清单,里面有很多数字。但是由于一些额外的字母,它们被保存为字符串 我有一个列表,其中包含一个名为jointNumber的字符串列。我的数据如下: 1b a1 10 15 2a 20 21 250 3 34 368 代码: List<ViewTestPackageHistorySheet> lstTestPackageHistorySheets = _reportTestPackageHistorySheetRepository.ShowReport(Id)

我有一个清单,里面有很多数字。但是由于一些额外的字母,它们被保存为字符串

我有一个列表,其中包含一个名为
jointNumber
的字符串列。我的数据如下:

1b
a1
10
15
2a
20
21
250
3
34
368
代码:

List<ViewTestPackageHistorySheet> lstTestPackageHistorySheets =
         _reportTestPackageHistorySheetRepository.ShowReport(Id)
         .OrderBy(i => new { i.LineNumber, i.JointNumber}).ToList();
列出LSTestPackageHistorySheets=
_reportTestPackageHistorySheetRepository.ShowReport(Id)
.OrderBy(i=>new{i.LineNumber,i.JointNumber}).ToList();

但它不起作用。为什么?如您所见,我根据两列对其进行排序第一列有效,我的意思是
行号
,但它不会根据
连接号

对数据进行排序,我可以看到您的列表已经按字母顺序排列。你把字符串转换成数字数据类型了吗?

new{i.LineNumber,i.JointNumber}
i.LineNumber)。然后通过(i=>i.JointNumber)你要找的是所谓的“自然排序”,如果你用谷歌搜索的话,C#已经有了这种方法的实现。你是什么意思,“由于一些额外的字母而保存为字符串”?您可以添加一些示例,说明您的数据中是什么样子的吗?您希望它们按什么顺序排列?我的数据中有一些字母