【发布时间】:2019-10-16 17:16:05
【问题描述】:
public class Details
{
public String Id { get; set; }
public String Type { get; set; }
public String Name { get; set; }
public String Terms { get; set; }
public List<FAQ> Faqs { get; set; }
}
public class FAQ
{
public string Question { get; set; }
public string Answer { get; set; }
}
我想将其转换为列表类型的详细信息,例如
List<Details> detatilsList; 我试过这样,但行在重复。
如果我删除详细信息而不是得到不同的结果,但由于匿名转换异常而无法将其转换为详细信息类型
var details = dt.AsEnumerable().GroupBy(x =>
new Details //removing this detail gives distinct record as expected. But can not cast
{
ID= x.Field<decimal>("ID"),
NAME = x.Field<string>("NAME"),
TYPE = x.Field<string>("TYPE"),
TERMS = x.Field<string>("TERMS")
})
.Select(x =>
new
{
x.Key.ID,
x.Key.NAME,
x.Key.TYPE,
x.Key.TERMS,
Faqs =
x.Select(
s => new Faq {Question = s.Field<string>("QUESTION"), Answer = s.Field<string>("ANSWER")})
}).ToList();
如何修复它并将其转换为详细信息列表
【问题讨论】:
-
你需要
Select你的Details和GroupBy正确的分组元素。
标签: c# linq ienumerable