У меня есть два (почти всегда) одинаковых списка, сделанные из объектов различного типа, но с некоторыми общими свойствами (и всегда уникальными значениями):
List<Object1> list1 = new List<Object1>();
List<Object2> list2 = new List<Object2>();
Затем мне нужно заказать list2
на основепорядок совпадений по свойству с list1
.
Пример:
list1:
0, "FMS", prop2, prop3;
1, "KFF", prop2, prop3;
2, "FOA", prop2, prop3;
3, "RDA", prop2, prop3;
4, "KFP", prop2, prop3;
list2:
Before:
991, prop1, "RDA", prop2, prop3, etc;
992, prop1, "FMS", prop3, prop4, etc;
993, prop1, "KFF", prop3, prop4, etc;
994, prop1, "KFP", prop3, prop4, etc;
995, prop1, "FOA", prop3, prop4, etc;
After:
992, prop1, "FMS", prop3, prop4, etc;
993, prop1, "KFF", prop3, prop4, etc;
995, prop1, "FOA", prop3, prop4, etc;
991, prop1, "RDA", prop3, prop4, etc;
994, prop1, "KFP", prop3, prop4, etc;
Мне нужно что-то вроде
list2.OrderBy(x => Where(list1.prop1 == list2.prop2))
Надеюсь, это достаточно ясно.