我有2列列表值
ptext | stylename
-----------|------------
aaa | styleone
ccc | styleone
ddd | styleone
fff | styletwo
ggg | styletwo
xyx | styleone
dkk | styleone
我想要像这样的列表
ptext | stylename
----------------|------------
aaa,ccc,ddd | styleone
fff,ggg | styletwo
xyx,dkk | styleone
请帮助使用一些linq查询
答案 0 :(得分:1)
按stylename
属性对项目进行分组,然后将每个组ptext
值投影到与昏迷相连的字符串中
list.GroupBy(x => x.stylename)
.Select(g => new {
stylename = g.Key,
ptext = String.Join(",", g.Select(x => x.ptext))
});
或使用查询语法:
from x in list
group x by x.stylename into g
select new { // or new YourItemType {
stylename = g.Key,
ptext = String.Join(",", g.Select(x => x.ptext))
}
您当然可以创建列表项类型的对象而不是匿名对象。