在C#中,我有Employee对象列表。 员工类是c#:将ID为数组的列表移动到列表顶部
public class Employee
{
public int ID { get; set; }
public string Name { get; set; }
}
在名单反对是基于Employee.ID分类。我有一个数组 INT这基本上是Employee.ID,我想在顶部列表和列表中,顺序必须保持与数组相同。
如果我哈瓦输入这样的 名单:
[
{ID:1,Name:A},
{ID:2,Name:B},
{ID:3,Name:AA},
{ID:4,Name:C},
{ID:5,Name:CD},
.
.
{ID:100,Name:Z}
]
和Array:{2,3,1}
然后我想输出列表:
[
{ID:2,Name:B},
{ID:3,Name:AA},
{ID:1,Name:A},
{ID:4,Name:C},
{ID:5,Name:CD},
.
.
{ID:100,Name:Z}
]
而且我已经这样做了
foreach (int i in a)
{
list = list.OrderBy(x => x.ID != i).ToList();
}
//a is array
//list is List
任何更好的解决方案。提前感谢。
可能重复的[C#列表<>按x然后y排序](https://stackoverflow.com/questions/289010/c-sharp-list-sort-by-x-then-y) –
虽然我已经标记为重复,这是你根据你的问题寻找的那种东西。 https://stackoverflow.com/questions/289010/c-sharp-list-sort-by-x-then-y –
这不是这个问题的重复。没有可用于排序数组的*属性*,而是另一个数组*。 – HimBromBeere