请求linq来操作数组的数组
本文关键字:数组 操作数 操作 linq 请求 | 更新日期: 2023-09-27 18:18:48
我有一个包含以下元素的数组
{Mark=90, Students={"Tom","Marry","Jack"}},
{Mark=50, Students={"Niko","Gary","David"}},
{Mark=70, Students={"John","Andy","Amy"}}
我想用Linq语句把它们转换成
{Mark=90, name="Tom"},
{Mark=90, name="Marry"},
{Mark=90, name="Jack"},
{Mark=50, name="Niko"},
{Mark=50, name="Gary"},
{Mark=50, name="David"},
{Mark=70, name="John"},
{Mark=70, name="Andy"},
{Mark=70, name="Amy"}
我该怎么办?
你可以投射到一个匿名类(或者一个真正的类,如果你需要当前方法之外的序列):
var results = from x in myArray
from s in x.Students
select new { x.Mark, name = s };
使用SelectMany
:
data.SelectMany(
item => Students.Select(
student => new {Mark = item.Mark, name=student.Name}
)
);