使用 XMLDocument 查询特定名称的所有元素
Query for all elements of a specific name with XMLDocument
我有以下 XML 名称 Sample.xml,我正在尝试使用 XDocument 查询 accountNo:
<Request xmlns="http://CompanyName.AppName.version1">
<Person>
<AccountNo>83838</AccountNo>
<FirstName>Tom</FirstName>
<LastName>Jackson</LastName>
</Person>
<Person>
<AccountNo>789875</AccountNo>
<FirstName>Chris</FirstName>
<LastName>Smith</LastName>
</Person>
在 C# 中使用以下代码,我能够获取第一人称
的帐号
XDocument xmlDoc = XDocument.Load("Sample.xml");
XNamespace nsSys = "http://CompanyName.AppName.version1";
XElement xEl2 = xmlDoc.Element(nsSys + "Request ");
XElement xEl3 = xEl2.Element(nsSys + "Person");
XElement xEl4 = xEl3.Element(nsSys + "AccountNo");
String sValue = xEl4.Value;
输出:83838
如何写代码提取所有人的账号
例如。
83838
789875
您可以使用 Select 简单地投影数据:-
XNamespace ns = "http://CompanyName.AppName.version1";
var AccountNumbers = xdoc.Descendants(ns + "Person")
.Select(x => (string)x.Element(ns + "AccountNo")).ToList();
这将为您提供所有帐号 List<String>
。
我有以下 XML 名称 Sample.xml,我正在尝试使用 XDocument 查询 accountNo:
<Request xmlns="http://CompanyName.AppName.version1">
<Person>
<AccountNo>83838</AccountNo>
<FirstName>Tom</FirstName>
<LastName>Jackson</LastName>
</Person>
<Person>
<AccountNo>789875</AccountNo>
<FirstName>Chris</FirstName>
<LastName>Smith</LastName>
</Person>
在 C# 中使用以下代码,我能够获取第一人称
的帐号XDocument xmlDoc = XDocument.Load("Sample.xml");
XNamespace nsSys = "http://CompanyName.AppName.version1";
XElement xEl2 = xmlDoc.Element(nsSys + "Request ");
XElement xEl3 = xEl2.Element(nsSys + "Person");
XElement xEl4 = xEl3.Element(nsSys + "AccountNo");
String sValue = xEl4.Value;
输出:83838
如何写代码提取所有人的账号 例如。
83838
789875
您可以使用 Select 简单地投影数据:-
XNamespace ns = "http://CompanyName.AppName.version1";
var AccountNumbers = xdoc.Descendants(ns + "Person")
.Select(x => (string)x.Element(ns + "AccountNo")).ToList();
这将为您提供所有帐号 List<String>
。