给定以下表结构,如何使用 Linq 查询返回类别名称列表以及该类别中的产品总数?
Category
---------
ID
Name
Product
---------
ID
IDCategory
Name
我理想的回报是:
Clothes 156
Electronics 2149
Utensils 412
Etc.
编辑:
感谢您的帮助建议,我现在有这个:
class Program
{
static void Main(string[] args)
{
MyDatabaseEntities entities = new MyDatabaseEntities();
var result = from c in entities.Categories
join p in entities.Products on c.ID equals p.IDCategory
group p by c.Name into g
select new
{
Name = g.Key,
Count = g.Count()
};
Console.WriteLine(result.ToString());
Console.ReadLine();
}
}
我该如何准确输出结果中的内容?在调试过程中,我可以查看变量值,它有我需要的内容,我只是不知道如何显示它。
from c in Category
join p in Product on c.ID equals p.IDCategory
group p by c.Name into g
select new
{
Name = g.Key,
Count = g.Count()
}
这适用于任何风格的 LINQ,并按名称分组,而不是按类别 ID 分组。
如果您使用 LINQ to Entities,这可能会更快,并且根据 ID 而不是名称进行分组:
from p in Product
group p by p.Category into g
select new
{
Name = g.Key.Name,
Count = g.Count()
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)