C# LINQ分组和忽略列

C# LINQ分组和忽略列,c#,linq,entity-framework,group-by,linq-to-objects,C#,Linq,Entity Framework,Group By,Linq To Objects,我正在使用EF和LINQ。 我的db表中有以下内容 branchId Name ItemId CategoryId 2 Test1 1 1 5 Test1 1 1 3 Test1 1 2 2 Test2 2

我正在使用EF和LINQ。 我的db表中有以下内容

branchId      Name        ItemId          CategoryId
2             Test1       1               1
5             Test1       1               1
3             Test1       1               2
2             Test2       2               1
7             Test2       2               1
我需要按ItemId分组,BranchId应该被忽略,所以输出应该是

Name  ItemId  CategoryId
Test1 1       1
Test1 1       2
Test2 2       2

请帮忙。谢谢

您需要应用group by,它位于多列上,因此您需要使用如下代码,该代码在多列上执行group by

var query = from item in context.Item
            group by item.Name,ItemId,item.CategoryId
           select item.Name,Item.Id,item.CategoryId;
var numberGroups = from it in context.items
                   group it by new { it.ItemId,it.Name,it.CateogryID } into g
                   select new { ItemID = g.Key.ItemID, Name= g.Key.Name
                                CategoryID = g.Key.CategoryID };

您需要应用在多列上的GROUPBY,因此为此,您需要使用如下代码,在多列上执行GROUPBY

var numberGroups = from it in context.items
                   group it by new { it.ItemId,it.Name,it.CateogryID } into g
                   select new { ItemID = g.Key.ItemID, Name= g.Key.Name
                                CategoryID = g.Key.CategoryID };

在您重新加载页面之前,我已编辑了我的答案:)在您重新加载页面之前,我已编辑了我的答案:)不起作用。我无法按it.ItemId和it.CategoryId进行分组??当我开始键入group by it.ContentObjectId时,。。。在“,”it tell me“cannot resolve symbol“@PranayRana
item
是用于表示项目集合的名称Shane Km之后,您需要将其替换为对表对象的引用,例如类似于
上下文的内容。items
@PranayRana即使只是供参考(计数是个好主意)你应该把它添加到文本中,这样就不会那么混乱了!否则-只需删除可视化,因为它无论如何都做不好!(这就像谈论蓝色,但在使用或多或少的水时绘制黄色图片以显示对比效果-当然…颜色是基础,…但蓝色可能表现不同)不起作用。我无法按it.ItemId和it.CategoryId进行分组??当我开始键入group by it.ContentObjectId时,。。。在“,”it tell me“cannot resolve symbol“@PranayRana
item
是用于表示项目集合的名称Shane Km之后,您需要将其替换为对表对象的引用,例如类似于
上下文的内容。items
@PranayRana即使只是供参考(计数是个好主意)你应该把它添加到文本中,这样就不会那么混乱了!否则-只需删除可视化,因为它无论如何都做不好!(这就像谈论蓝色,但在使用或多或少的水时绘制黄色图片以显示对比效果-当然…颜色是基础,…但蓝色的表现可能不同)