Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.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:按标题排列字符串列表(“第3条”、“第15条”)_C#_.net_Linq - Fatal编程技术网

C#/linq:按标题排列字符串列表(“第3条”、“第15条”)

C#/linq:按标题排列字符串列表(“第3条”、“第15条”),c#,.net,linq,C#,.net,Linq,我有一个项目对象列表(C#): 列出项目列表 Item对象有一个属性标题,其值在(“第3条:”、“第14条:”、“第233条:dfsdf”等)之间变化 当我以常规LINQ方式排序时,如下所示: itemList.OrderBy(p => p.Title).ToList(); 第14条排在第3条之前,因为它以1开头。如何以正确的方式对该集合进行排序?您可以定义一个仅在对象上使用getter的属性,该属性将仅从标题加载数字(可以通过将标题拆分为“”,或者替换文章文本,然后修剪结果),并在Or

我有一个项目对象列表(C#):

列出项目列表

Item对象有一个属性标题,其值在(“第3条:”、“第14条:”、“第233条:dfsdf”等)之间变化

当我以常规LINQ方式排序时,如下所示:

itemList.OrderBy(p => p.Title).ToList();

第14条排在第3条之前,因为它以1开头。如何以正确的方式对该集合进行排序?

您可以定义一个仅在对象上使用getter的属性,该属性将仅从标题加载数字(可以通过将标题拆分为“”,或者替换文章文本,然后修剪结果),并在OrderBy中使用新属性。

重构类并添加
articlerNumber int
属性,然后按该属性排序。不要在一个字符串属性中存储多个信息。所有标题是否具有相同的格式:“文章:”?@TimSchmelter同意,这似乎是最干净的解决方案,可以尝试一下。谢谢