我有表4列。Linq選擇多個列作爲單獨的陣列
JobId StateId Salary Expense
1 1 35,000 31,000
1 1 33,000 25,000
1 2 28,000 26,000
2 2 7,000 16,000
2 2 6,000 20,000
2 1 9,000 22,000
2 1 15,000 29,000
通過使用C#中LINQ,我要通過的JobId和STATEID combination.For每個組合我想薪金的陣列和費用的陣列組。
我可以通過爲每個組合得到一個列作爲陣列,通過使用這個
(from r in myTable.AsEnumerable()
group r by new {
jobId = r.Field<int>("JobId"),
stateId = r.Field<int>("StateId")
}).ToDictionary(
l => Tuple.Create(l.Key.jobId, l.Key.stateId),
l=> (from i in l select i.Field<double>("Salary")).AsEnumerable()
);
如何可以有薪金和費用兩個陣列的每個組??
我的目標是找到每種組合的平均薪水和平均費用,並執行一些其他操作。或者至少告訴我如何選擇多個列作爲單獨的數組。
注意:我不想收集每個組合的匿名對象。
謝謝你的回答。除了平均水平,我還需要做一些額外的工作。在後面的過程中,我想選擇特定組合的費用/工資數組,並執行一些處理 – KhanSharp 2013-04-25 20:01:32
@KhanSharp,在這種情況下,您可以使用我的第一個代碼示例。爲了完整性,我已經包含了更多信息。 – 2013-04-25 20:48:31