我有一个XML片段,如下所示:

<PerformancePanel>
    <LegalText>
        <Line id="300" />
        <Line id="304" />
        <Line id="278" />
    </LegalText>
</PerformancePanel>

我正在使用以下代码获取对象:
var performancePanels = new
{
    Panels = (from panel in doc.Elements("PerformancePanel")
              select new
              {
                  LegalTextIds = (from legalText in panel.Elements("LegalText").Elements("Line")
                                  select new List<int>()
                                  {
                                      (int)legalText.Attribute("id")
                                  }).ToList()
               }).ToList()
};

LegalTextIds的类型是List<List<int>>。我怎样才能得到这个List<int>?

最佳答案

不要为每个项目创建新列表,只需创建一个列表:

LegalTextIds = (from legalText in panel.Elements("LegalText").Elements("Line")
                select (int)legalText.Attribute("id")).ToList()

关于c# - 如何从LINQ到生成List <List <int >>的XML的List <int>?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2733405/

10-11 00:13