Tôi có truy vấn kết hợp tham gia và nhóm, nhưng tôi gặp sự cố. Truy vấn giống như:LINQ: kết hợp tham gia và nhóm theo
var result = from p in Products
join bp in BaseProducts on p.BaseProductId equals bp.Id
group p by p.SomeId into pg
select new ProductPriceMinMax {
SomeId = pg.FirstOrDefault().SomeId,
CountryCode = pg.FirstOrDefault().CountryCode,
MinPrice = pg.Min(m => m.Price),
MaxPrice = pg.Max(m => m.Price),
BaseProductName = bp.Name <------ can't use bp.
};
Như bạn thấy, nó tham gia bảng Sản phẩm với bảng BaseProducts và nhóm trên id của bảng Sản phẩm. Nhưng trong kết quả ProductPriceMinMax, tôi cũng cần một thuộc tính của bảng BaseProducts: bp.Name, nhưng nó không biết bp.
Bất kỳ ý tưởng nào tôi đang làm sai?
Cảm ơn!
Điều này tốt hơn giải pháp của chúng tôi :) Cảm ơn. –
xem http://stackoverflow.com/a/2877012/1923685 –
@AakashM Cảm ơn. Nhưng tôi đang lấy một vấn đề với groupVariable.FirstOrDefault(). Column_name. Khi tôi sẽ truy cập vào biến IQueryable Kết quả sau đó lỗi xảy ra mà tiêu đề là ** "entitycommandexecutionexception đã được unhandled bởi mã người dùng" ** với body *** "Đã xảy ra lỗi khi thực thi định nghĩa lệnh. "*** Tôi không thể hiểu chuyện gì đang xảy ra. –