我想知道是否可以像這樣進行 linq 查詢:
Dictionary<(int,int), object)> entity = _context.Table.ToDictionary((i => i.IDOrigin, i.IDDestiny), o => o);
我知道可以使用唯一鍵.ToDictionay(i => i.Key, o => o.Value);
,但在這種情況下,此表有雙 PK,我需要兩者作為鍵。
謝謝你。
uj5u.com熱心網友回復:
你只需要稍微調整一下你的電話:
_context.Table.ToDictionary(i => (i.IDOrigin, i.IDDestiny), o => o)
我移動的只是括號:您仍然希望i
作為常規 lambda 運算式引數,但您希望 lambda 的結果是元組文字,這就是(i.IDOrigin, i.IDDestiny)
部分。
請注意,該o => o
部分是不必要的 - 如果您沒有指定用于從源元素投影到值的 lambda 運算式,ToDictionary
則使用源元素作為值。所以你可以使用:
_context.Table.ToDictionary(i => (i.IDOrigin, i.IDDestiny))
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/530627.html
標籤:C#实体框架林克
上一篇:如何覆寫列舉的“名稱”屬性?