LINQ C# - 编写查询以透视样式显示数据

时间:2013-04-21 22:40:49

标签: c# sql linq

我是C#LINQ的新手,我不知道如何编写以下查询。我在数据库中有下表。

  • 产品
    • ProductID
    • 姓名
    • ManufacturerID
    制造商
    • ManufacturerID
    • 姓名

每个产品都有一个制造商。要求是我需要显示一个报告,显示所有制造商(作为列)并显示每个制造商的产品。

下面是我想要实现的一个例子 http://s24.postimg.org/9baxp7xw5/Capture.png

由于这与数据存储在表中的方式不同,我不确定如何检索它。任何帮助,将不胜感激。感谢

1 个答案:

答案 0 :(得分:1)

这样的事情可能有用(做出一些假设):

var pivot = Manufacturers.Select(m => new 
    { 
        Name = m.Name, 
        Products = Products
            .Where(p => p.ManufacturerId == m.ManufacturerId)
            .Select(p => p.Name)
            .ToList()
    });