方案
我有三個IEnumerable的名單 - IEnumerable<Dog>
,IEnumerable<Cat>
和IEnumerable<Horse>
。
我希望他們在一個單一的IEnumerable<NameColor>
。
我有一個public static explicit operator NameColor
在每個狗,貓和馬的對象定義爲允許我將它們轉換成NameColor
C#聯合運營商
所以:
IEnumerable<NameColor> list = dogs as IEnumerable<NameColor>;
list = list.Union(cats as IEnumerable<NameColor>);
list = list.Union(horses as IEnumerable<NameColor>);
然而,這並不工作。我得到錯誤Value cannot be null. Parameter name: first
,但我沒有看到一個名爲first
的參數,即使是一個選項?!
也許Union需要.First()。你確定沒有這些清單是空的嗎? – simendsjo 2010-11-09 09:47:01
順便說一句 - 「Union」與「我希望他們都在......」中不一樣 - 你可能是指「Concat」。 – 2010-11-09 09:58:38