简体   繁体   中英

How can get Child Nodes's List from parent Node's Attribute in C# xmldocument

<?xml version="1.0" encoding="utf-8" ?>
<Database name="DB1">
   <Table name="Faculty">
    <Column>FID</Column>
    <Column>First Name</Column>
    <Column>Last Name</Column>
    <Column>DOB</Column>
    <Column>Phone No</Column>
    <Column>Full Address</Column>
    <Column>Salary</Column>
    <Column>Heights</Column>
</Table>
  <Table name="Title">
    <Column>TID</Column>
    <Column>Title</Column>
</Table>
</Database>

I want to get all child nodes on bases of 's attribute.. like if table name Title then xmlchildlist get TID, Title Nodes

If you are confortable using LINQ, try this:

var name = "Title";
XDocument doc = XDocument.Load(path);
var selectors = (from elements in doc.Elements("Database").Elements("Table")
                where elements.Attribute("name").Value == name
                select elements).FirstOrDefault();
var list = selectors.Elements("Column").ToList();
var id = list[0];
var title = list[1];

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM