我有一个Xml,我想通过他们的名字获得单个元素。我尝试使用SelectSingelNode方法。这就是MSDN告诉你的事情:
https://msdn.microsoft.com/en-us/library/system.xml.xmlnode.selectsinglenode%28v=vs.110%29.aspx
目前我正在使用XmlDocument和XmlNodeList来读取Xml。但这给了我整棵树。
string path = "xml_path.xml";
FileStream reader = new FileStream(path, FileMode.Open, FileAccess.Read);
XmlDocument xdoc = new XmlDocument();
xdoc.Load(reader);
XmlNodeList node = xdoc.GetElementsByName("name");
我在win-universal-app中找不到SelectSingeNode方法。我正在使用Visual Studio 2015.为什么他们删除了这个?是否有其他方法可以通过它的名称获得单个元素?
答案 0 :(得分:1)
XmlNodeList是Enumerable但它没有实现Generic IEnumerable,所以你必须先使用Linq查询来解决你的问题
XmlNode node = xdoc.GetElementsByTagName("name").Cast<XmlNode>().First();
XmlNode node = xdoc.GetElementsByTagName("name").Cast<XmlNode>().FirstorDefault();
XmlNode node = xdoc.GetElementsByTagName("name").Cast<XmlNode>().Where(somecondition).FirstorDefault();