繁体   English   中英

如何使用C#选择具有相同名称的XML的多个元素?

[英]How to select multiple element with te same name form XML using C#?

我真的很固守这一点,因此非常欢迎所有帮助。 我有一个这样的XML文档:

</root>
 <person>
  <name>John</name>
  <lastname>Doe</lastname>
  <laguage>NL</language>
  <laguage>EN</language>
  <laguage>DK</language>
 </person>
<person>
 <name>Samantha</name>
 <lastname>Doe</lastname>
 <laguage>NL</language>
 <laguage>EN</language>
 <laguage>DK</language>
</person>
</root>

因此,我想在我的一个模型中将其放置在此处,以便在下面阅读。

XDocument xDoc = XDocument.Load("c:\\users\\acount\\documents\\visual studio 2010\\Projects\\XmlTest\\XmlTest\\XmlTest\\Sample.xml");

var data = from feed in xDoc.Descendants("person")
           select new XmlModel
           {
             name = feed.Element("name").Value,
             lastname = feed.Element("lastname").Value,
             language = feed.Element("language").Value,
           };

因此,就像您期望的那样,它只会读取一种语言,而不会读取多种语言。 我需要的是我阅读的所有语言,但是仍然存在问题,因为有些人比其他人知道更多的语言。 有人可以帮我,因为我病了又累

languages = feed.Descendants("language").Select(x=>x.Value).ToList(),
var data = from feed in xDoc.Descendants("person")
               select new XmlModel
                   {
                       name = feed.Element("name").Value,
                       lastname = feed.Element("lastname").Value,
                       language = feed.Elements("language").Select(x=>x.Value)
                   };

您需要将XmlModel的语言设置为IEnumerable<string>以便它可以存储多种语言。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM