有兩個類:排序C#列表
public class Object1
{
public string Prop1 { get; set; }
}
public class Object2
{
public string Prop2 { get; set; }
}
而且有:
List<Object1> A;
List<Object2> B;
需要由Prop1
同樣的方式列表A
的元素進行排序,因爲他們在列表B
已排序與Prop2
。 Prop1
和Prop2
有重複,我不能刪除我的解決方案中的重複項。所以,我必須這樣排序列表A
:
- 首先進入列表A的對象與PROP1與由PROP2排序名單B(B名單已經訂購)
- 然後進入名單的對象列表B的對象A與prop1不存在的列表B中與Prop2屬性。
編輯2014/03/13 14:20
Prop1
收集不是獨特的,具有重複(同Prop2
)
編輯2014/03/13 15:23
一些示例。
我有這樣的:
var A = new List<Object1>
{
new Object1{Prop1 = "a_b_c"},
new Object1{Prop1 = "x_y_z"},
new Object1{Prop1 = "a_b_c"},
new Object1{Prop1 = "a_b"},
new Object1{Prop1 = "a"},
};
var B = new List<Object2>
{
new Object2{Prop2 = "a"},
new Object2{Prop2 = "a_b"},
new Object2{Prop2 = "a_b_c"},
};
而且預計今年後排序:
var expected = new List<Object1>
{
new Object1{Prop1 = "a"},
new Object1{Prop1 = "a_b"},
new Object1{Prop1 = "a_b_c"},
new Object1{Prop1 = "a_b_c"},
new Object1{Prop1 = "x_y_z"},
};
你知道排序的類型嗎?你知道列表B是如何分類的嗎?您可以再次使用該排序方法。 –
你想排序'A'或它們的屬性'Prop1'。那麼你需要訂購內部收集還是外部?如果是後者,你想如何通過內部集合對外部集合進行分類?他們有什麼關係?你能提供一個例子嗎? –
我不得不說,這可能不是最好的英語,但我很清楚這個問題是什麼。 –