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,现在这个解决方案不再工作了