我只是試圖在2個LINQ查詢,如下進行簡單的工會:LINQ聯盟錯誤 - 類型不能被推斷
var results1 = from a in dt.AsEnumerable()
where array1.Contains([COL_1])
select new
{
a = a.Key
};
var results2 = from b in dt.AsEnumerable()
where array2.Contains([COL_2])
select new
{
b = b.Key
};
var concatResults = results1.Union(results2);
但我收到以下錯誤:
The type arguments for method 'System.Linq.Enumerable.Union(System.Collections.Generic.IEnumerable, System.Collections.Generic.IEnumerable)' cannot be inferred from the usage. Try specifying the type arguments explicitly.
任何人都可以指導我如何解決這個問題嗎?
在此先感謝
CM
好的,謝謝你的回覆。他們爲什麼是不同類型的?查詢來自同一張桌子......不好意思問,我真的試圖在這裏過來一個無知的障礙! – CatchingMonkey
這些類型是由編譯器創建的,它們的屬性類型是根據名稱中的賦值和名稱推斷的。在你的情況下,你有一個屬性的匿名類型,和一個具有b屬性。您可以使用自己的類型顯式化,也可以使兩個匿名類型使用相同的屬性名稱和類型。 – devdigital