0
使用Linqpad摸出我的查詢,得到上述錯誤:錯誤的LINQ parallequery轉換爲IEnumerable的
(from bp in basepay_records
select new { empID = bp.Prep_emp, loc = bp.Prep_loc }).Union
(
from ass in emp_assignments
select new { empID = ass.Prea_emp, loc = ass.Prea_loc }
)
我已經有和無的第一個查詢,不存在在括號試了一下。這個聯合是一個更大的查詢的一部分,並且這最終會放在一個用於聯接的子查詢中,所以我不能照常進行,儘管我測試了它作爲一個獨立的查詢,但它失敗了,說:沒有Union的定義:
var q1 = from bp in basepay_records select new { empID = bp.Prep_emp, loc = bp.Prep_loc };
var q2 = from ass in emp_assignments select new { empID = ass.Prea_emp, loc = ass.Prea_loc };
q1.Union (q2).Dump ("Union");
我確認所有數據類型都匹配。
完整的錯誤信息是:
無法執行文本選擇:「System.Linq.IQueryable」不包含「聯盟」的定義和最佳推廣方法重載「System.Linq.ParallelEnumerable.Union (System.Linq.ParallelQuery,System.Collections.Generic.IEnumerable)」有一些無效參數
實例參數:無法從轉換 'System.Linq.IQueryable' 到 'System.Linq.ParallelQuery'
你知道什麼是具體的錯誤信息。一種可能性是empID類型,或者loc在每個匿名類型中是不同的。例如,一個可能很長,而另一個則是int。 – cgotberg
什麼是basepay_records? –
basepay_records和emp_assignments是表格。 – BattlFrog