C# 列表<;t>;无法通过OrderBy正确订购
我的模型具有以下结构:C# 列表<;t>;无法通过OrderBy正确订购,c#,sorting,C#,Sorting,我的模型具有以下结构: public class resultadoDialogModel { public int tipo { get; set; } public int idDocIndice { get; set; } public int docIds { get; set; } } 我有一个带有以下值的列表newModel: 143 77 45 142 75 44 145 75 44 146 75 44 147 75 44 1
public class resultadoDialogModel
{
public int tipo { get; set; }
public int idDocIndice { get; set; }
public int docIds { get; set; }
}
我有一个带有以下值的列表newModel
:
143 77 45
142 75 44
145 75 44
146 75 44
147 75 44
142 75 45
中间一栏指的是public int idDocIndice
现在,当我按升序对项目排序时,这不会正确排序
var newModelOrdered=newModel.OrderBy(o=>o.idDocIndice)代码>
最后2项不正常。为什么会发生这种情况?似乎出现了按DocID排序的错误,或者填充数据不正确问题是用于排序的属性错误
这是正确的方法:
var newModelOrdered = newModel.OrderBy(o => o.tipo);
OrderBy在错误的属性上工作正常请显示一个简短但完整的程序来演示问题。从外观上看,您的数据实际上对应于输出中的最后一列idDocIndice
。您显示的类中没有public int index
。您确定idDocIndice不是列表中的第三列吗?它似乎是在第三列排序,而不是在第二列。最后你是在调用ToList
还是ToArray
?刚刚确认..@JonSkeet修复了帖子Eren谢谢,你在哪里Jon。我没有注意到这一点。我不确定这个错误是否有答案,但如果你能找到一个方法,回答这个问题,我会投赞成票。谢谢
var newModelOrdered = newModel.OrderBy(o => o.tipo);