我有一種感覺,以下可能是一個暴行,也許這就是爲什麼它不起作用。 所以我現在在尋求你的幫助。 :-)我怎麼能在Linq中完成這項工作?
也請幫我編輯這個問題。我不知道這將是一個合適的標題或更好的制定方式。 (就像你現在可能已經猜到了,英語不是我的母語)。
考慮一個類,如:
public class Order
{
public int FareCode;
public int Quantity;
}
然後LINQ查詢,如:
var orders = new []{ new Order {...}, ...};
var fareCodes = orders.Select(o => o.FareCode).ToArray();
using(var dc = new datacontext())
{
var query = dc.Fares
.Where(f => fareCodes.Contains(f.FareCode))
.Select(f => new {
Fare = f,
Quantity = orders.Single(o => o.FareCode == f.FareCode).Quantity //<-- This is not right!
})
}
所以Quantity = Orders.Single(o => o.FareCode == f.FareCode).Quantity
ins't權。那麼,完成這個的另一個選擇是什麼?
更新:它不工作的原因是因爲運行時拋出此異常:局部序列不能在LINQ可以用於除載有()操作
你想得到什麼結果? – Stephen
爲什麼「這是不對的」?它是否引發異常? – digEmAll
您是否試圖從數據源更新數量屬性值? – jlafay