我有一個 ProductDetailDTO 類型的列表。List<ProductDetailDTO> productDTOs;public class ProductDetailDTO{ public int ProductId { get; set; } public string Name { get; set; } public string Category { get; set; } public byte[] Image { get; set; } public string Description { get; set; } public string Brand { get; set; } public string GUID { get; set; } public string VariantName { get; set; } public string VariantValue { get; set; } public decimal Price { get; set; }}現(xiàn)在,我想一起顯示具有相同 GUID 的所有變體(VariantName 和 VariantValue)。我怎樣才能做到這一點?
2 回答

BIG陽
TA貢獻1859條經驗 獲得超6個贊
您可以像這樣使用 GroupBy 和 Select:
var variants = productDTOs .GroupBy(k => k.GUID) .Select(v => v .Select(variant => new { variant.VariantName, variant.VariantValue }));

白板的微信
TA貢獻1883條經驗 獲得超3個贊
您可以使用分組依據
group p by p.GUID into g
select new { Id = g.Key, ProductDetail = g.ToList()).ToList();
如果您在分組依據之前有表,那么您可以在組本身中添加新對象
group new { p.xyz, n.xyz }
by new { p.GUID } into g
否則使用let將中間對象保存在對象中并對其進行分組
- 2 回答
- 0 關注
- 180 瀏覽
添加回答
舉報
0/150
提交
取消