我将如何使用 Linq 展开下面的结构?
我正在查看以下结果:
Date Ids
1/1/2011 1
1/1/2011 2
1/1/2011 3
1/1/2012 3
etc..
我试过 SelectMany,但我做错了。此示例的一些片段:
public class DTO
{
public DateTime Date { get; set; }
public List<int> Ids { get; set; }
}
作为
var dataSet = new List<DTO>{
new DTO {Date = new DateTime(2011,1,1), Ids = new List<int>{1,2,3} },
new DTO {Date = new DateTime(2012,1,1), Ids = new List<int>{3,4,5} },
new DTO {Date = new DateTime(2013,1,1), Ids = new List<int>{5,6,7} }
};
最佳答案
您正在寻找 SelectMany
var result = dataSet.SelectMany(x => x.Ids, (dto,id) => {
return new { date = dto.Date,id};
});
关于c# - 扁平化关键集合项目的集合 Linq,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43846324/