.net - Linq 查询从该 XML 解析/获取内容 (WSDL)

标签 .net c xml linq

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns:def="http://www.w3.org/2002/ws/databinding/examples/6/09/"
             xmlns:xs="http://www.w3.org/2001/XMLSchema"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<types>
      <xs:schema xmlns="http://www.w3.org/2002/ws/databinding/examples/6/09/"
                 targetNamespace="http://www.w3.org/2002/ws/databinding/examples/6/09/"
                 elementFormDefault="qualified">
         <xs:include xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/"
                     xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
                     schemaLocation="http://www.w3.org/2002/ws/databinding/examples/6/09/static/Included.xsd"/>
        <xs:include xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/"
                     xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
                     schemaLocation="http://www.w3.org/2002/ws/databinding/examples/6/09/static/Included.xsd"/>
         <xs:element name="echoInclude">
            <xs:complexType>
               <xs:sequence>
                  <xs:element ref="ex:include"/>
               </xs:sequence>
            </xs:complexType>
         </xs:element>
      </xs:schema>
   </types>
</definitions>

在上面的 XML 中,我想获取 xs:schema 元素内每个 xs:include 元素的 schemaLocation 属性的值

最佳答案

首先加载XML文档,设置Namespace并查询元素名称。

 XDocument doc = XDocument.Load(file);
 XNamespace ns= "http://www.w3.org/2001/XMLSchema";

 var nodeList = from ele in doc.Descendants(ns + "schema").Descendants(ns + "include")
                  select ele.Attribute("schemaLocation").Value;

 foreach (var t in nodeList)
  {
     Console.WriteLine(t);
  }

关于.net - Linq 查询从该 XML 解析/获取内容 (WSDL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8699353/

相关文章:

C 进程间通信

c - 排除限定词重复的语法

xml - XPath 返回同一级别上的所有元素

Android - Html 类 - fromHtml - 它是如何工作的?

c - c中的程序意外终止

android - 对 strings.xml 文件的更改是否需要编译才能使更改生效?

.net - 为什么 RelationshipManager.GetRelatedReference<T>(,) 总是返回具有空值的 EntityReference<T>?

.net - Entity Framework 视频教程

.net - WCF 回调是否超时

c# - 是否有任何 .NET ORM 支持开箱即用的本地化实体?