Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用XDocument检索定义的字段_C#_Xml Parsing_Linq To Xml - Fatal编程技术网

C# 使用XDocument检索定义的字段

C# 使用XDocument检索定义的字段,c#,xml-parsing,linq-to-xml,C#,Xml Parsing,Linq To Xml,我目前正在处理一个应用程序,我需要能够通过XML文档对其进行配置,我已经创建了XML文档,但我不知道如何正确访问其中的属性。下面是一个简短的例子: <MonitoringApplication> <Configuration> <WebService> <HttpUser>User</HttpUser> <HttpPassword>Password</HttpPassword>

我目前正在处理一个应用程序,我需要能够通过
XML文档
对其进行配置,我已经创建了
XML
文档,但我不知道如何正确访问其中的属性。下面是一个简短的例子:

<MonitoringApplication>
  <Configuration>
    <WebService>
      <HttpUser>User</HttpUser>
      <HttpPassword>Password</HttpPassword>
    </WebService>

    <Application>
      <Server>http://localhost</Server>
      <ServerPort>9000</ServerPort>
    </Application>
  </Configuration>
</MonitoringApplication>
其中
myXmlFile
只是一个加载了
XDocument.Load()
又快又脏的文档

var user = (string)doc.Descendants("HttpUser").First();
要回答您的评论,您的节点现在已命名,因此您需要考虑这一点:

var ns = XNamespace.Get("urn:monitoring-schema");
var user = (string)doc.Descendants(ns + "HttpUser").First();
又快又脏

var user = (string)doc.Descendants("HttpUser").First();
要回答您的评论,您的节点现在已命名,因此您需要考虑这一点:

var ns = XNamespace.Get("urn:monitoring-schema");
var user = (string)doc.Descendants(ns + "HttpUser").First();
你可以这样做

var user = doc.Descendants("HttpUser").First().Value;
工作

你可以这样做

var user = doc.Descendants("HttpUser").First().Value;

工作是愚蠢的,我在我的单元测试中编写了HTTP而不是HTTP。我用这个
更新了XML,现在这个解决方案不再工作了。工作是愚蠢的,我在单元测试中编写了HTTP而不是HTTP。我用这个
更新了XML,现在这个解决方案不再工作了