r.v*_*esh 7 c# linq linq-to-entities
表名:名单
id | Name
------------
1 |xxxxx
2 |yyyyy
Run Code Online (Sandbox Code Playgroud)
表名:类别
id | Nameid |Categoryid
-----------------
1 |1 |5
2 |1 |4
3 |2 |3
4 |2 |8
Run Code Online (Sandbox Code Playgroud)
我需要像这样的linq查询结果
id | Name |Categoryid
-----------------
1 |xxxx |5,4
2 |yyyy |3,8
Run Code Online (Sandbox Code Playgroud)
我尝试了linq,但它只显示了第一个类别ID
var list = from n in namelist
join c in category on n.id equals c.nameid
select new
{
n.id,
n.name,
c.categoryid
}
Run Code Online (Sandbox Code Playgroud)
您可以使用“ 组加入”来执行此操作,并使用以下方法加入组中的所有类别ID String.Join:-
var result = (from n in namelist
join c in categories
on n.Id equals c.NameId into g
select new
{
id = n.Id,
Name = n.Name,
CategorieIds = g.Select(x => x.CategoryId)
}).AsEnumerable()
.Select(x => new
{
Id = x.id,
Name = x.Name,
CategoryIds = String.Join(",",x.CategorieIds))
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2963 次 |
| 最近记录: |