从xml文件中提取值,一个简单的例子

本文关键字:一个 简单 文件 xml 提取 | 更新日期: 2023-09-27 18:28:50

我的xml文件的结构

<?xml version="1.0" encoding="utf-8"?>
<ItemsToProcess xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Item>somevalue1</Item>
  <Item>somevalue2</Item>
</ItemsToProcess>

我试着提取这样的值

 XElement elem = XElement.Load(filename);
 var items = from c in elem.Descendants("ItemsToProcess")                     
             select new ItemToProcess
             {
                 ItemValue = c.Element("Item").Value;
             };
             return items;

但显然我错过了什么。我做错了什么?

从xml文件中提取值,一个简单的例子

您有一个需要指定的xml命名空间。如果你需要Item元素,你可以使用:

XNamespace ns = "http://www.w3.org/2001/XMLSchema-instance";
var items = elem.Descendants(ns + "Item")
           .Select(x => new ItemToProces { ItemValue = x.Value });                    

请参阅此以查找有关xml命名空间的更多信息。