我有一个集合(对象)列表,在这里我需要按特定的键(值)对它们进行排序我已经尝试过了,但是我在任何地方都能找到的是被ascii排序的字符串列表,而不是对象。var myList = new List();
这个清单如下:
[
{
"parent": null,
"Id": 14108,
"value": ""
},
{
"parent": null,
"Id": 14109,
"value": null
},
{
"parent": null,
"Id": 14113,
"value": "1ab"
},
{
"parent": null,
"Id": 14114,
"value": "11b"
},
{
"parent": null,
"Id": 14115,
"value": "a10"
},
{
"parent": null,
"Id": 14111,
"value": "a1234"
}
]
我希望列表按值按ASCII顺序排序,但似乎只有通过c#中的字符串列表才能解决问题
您需要将IComparer传递给您的排序方法,或使用lambda来标识应使用哪个属性进行排序。在您的示例中,它看起来类似于myList.Sort( f => f.value )
给定
List<MyInterfaceObject> mylist;
然后
mylist.Sort(x => x.value);