解析XML文件并收集所需的值

时间:2012-12-23 09:38:29

标签: wpf xml-parsing

我尝试解析XML文件并从中收集所需的值。我有以下XML:

<?xml version="1.0"?>
<TDXItem>
    <PROJECT_NAME name="Project_MNG_Test">
            <PROJECT_ID>1022</PROJECT_ID>
            <DOMAIN_NAME>PROJECTS_MNG</DOMAIN_NAME>
            <DB_NAME>projects_mng_project_mng_test_</DB_NAME>
    </PROJECT_NAME>
    <PROJECT_NAME name="Project_MNG_Test1">
            <PROJECT_ID>1023</PROJECT_ID>
            <DOMAIN_NAME>PROJECTS_MNG</DOMAIN_NAME>
            <DB_NAME>projects_mng_project_mng_test1_</DB_NAME>
    </PROJECT_NAME>
</TDXItem>

我尝试了很多代码,最近的代码如下:

public static void RunQuery(){
            string UserName = null;
            string xmlURI = "Sites_Name.xml";
            XDocument doc = XDocument.Load(xmlURI);
            var field = doc.Descendants("PROJECT_NAME").Where(x => (string)x.Attribute("name") == "PROJECT_MNG_Test").FirstOrDefault();
            if (field != null)
            {
        // Use value here                    
        string value = (string)field.Element("DB_NAME");

             }    
 }

但是我的价值一直都是空的,我尝试了许多约会工作。 我知道这是我的坏事,但我不知道在我的代码或构建XML文件的方式。

1 个答案:

答案 0 :(得分:0)

您不应在此处指定命名空间,例如使用:

var field = doc.Descendants("PROJECT_NAME")
   .Where(x => (string)x.Attribute("name") == "Project_MNG_Test").FirstOrDefault();