Tôi muốn sử dụng LINQ để nhóm dữ liệu từ một DataTable (cột: userid, chargetag, phí).Sử dụng LINQ để nhóm dữ liệu từ DataTable
Nội dung có thể trông như thế này:
userid chargetag charge
-----------------------------
user1 tag3 100
user2 tag3 100
user3 tag5 250
tôi cần một cái gì đó như thế này kết quả là:
chargetag count sum
-------------------------
tag3 2 200
tag5 1 250
Đây là những gì tôi có cho đến nay:
var groupedData = from b in dataTable.AsEnumerable()
group b by b.Field<string>("chargetag") into g
let count = g.Count()
select new
{
ChargeTag = g.Key,
Count = count,
};
tôi có thể trích xuất tên của chargetag và số của nó. Tôi phải thay đổi truy vấn LINQ để truy cập vào tổng chi phí như thế nào?
Cảm ơn trước :-)
Kính trọng, Kevin
đẹp giải thích (như thường lệ). Tôi muốn được quan tâm để biết nếu tùy chọn đầu tiên thực sự nhóm hai lần hoặc nếu nó được tối ưu hóa. – kjn
Hoạt động hoàn hảo (tất nhiên ;-)) Cảm ơn bạn lần nữa! – bitfrickler
@Jon Skeet: Cách tốt nhất để tôi nắm bắt tất cả những thứ LINQ này là gì? Tôi đã có cuốn sách 'C# In Depth' của bạn, nhưng tôi bị lạc trong phần LINQ (như ví dụ của bạn ở trên). Phần còn lại của công cụ mã hóa không quá tệ. – jp2code