如果我有一個像搜索集合在C#中的子類型/ LINQ的
List<SomeAbstractBaseType> someList = new List<SomeAbstractBaseType>();
集合,我加入了兩個不同的子類型到這個集合(即兩個子類型從SomeAbstractBaseType繼承)這樣的:
someList.Add(someChildOfType1);
someList.Add(someChildOfType2);
someList.Add(someOtherChildOfType1);
someList.Add(someOtherChildOfType2);
說我想查詢someChildOfType1的所有元素。我怎樣才能做到這一點,我曾嘗試以下(不編譯,可從孩子型隱蔽於母公司型)
List<ChildType1> temp = someList.Where(x => x.GetType() == typeof(ChildType1)).ToList();
任何想法我怎麼能做到這一點?
我無法弄清楚如何重現你的問題,因爲你的代碼爲我工作(沒有編譯器錯誤)。我已經編譯它在.NET 3.5/4.0,它都運行良好。無論哪種方式,你可以去'Enumerable.OfType()'。 –
Padel
2010-06-29 10:05:07