我有一个Foo列表:
class Foo {
public int Id { get; set; }
public String Name { get; set; }
}
我想把它转换成一个列表Bar:
class Bar {
public int Id { get; set }
public List<String> NameList { get; set; }
}
Foo中的数据如下所示:
Id Name
-----------
1 Foo1
1 Foo2
1 Foo3
2 Foo3
2 Foo2
2 Foo1
我希望您能将其呈现为以下样式:
并且我希望它看起来像这样:
Id NameList
----------------
1 Foo1
Foo2
Foo3
2 Foo3
Foo2
Foo1
我会将文本转换为 Razor 渲染的 Html 无序列表以更方便显示。如果有更简单的方法而不需要进行转换,请告诉我。最终,我将呈现如下所示的 Html:
<li>1
<ul>
<li>Foo1</li>
<li>Foo2</li>
<li>Foo3</li>
</ul>
</li>
<li>2
<ul>
<li>Foo3</li>
<li>Foo2</li>
<li>Foo1</li>
</ul>
</li>
到目前为止,我已经尝试了以下 Linq 代码,但它没有起作用
BarList = FooList.Select(x => new Bar() {
Id = x.Id,
NameList = x.Select(y => y.)
}).ToList();
GroupBy
语句,它恰好可以做到这一点。https://msdn.microsoft.com/zh-cn/library/bb545971.aspx - Bradley UffnerGroupBy
。但是你可能需要澄清你期望的输出,因为它并没有太多意义。 - Jonesopolis