我有表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