我的XML文件:
<?xml version="1.0" encoding="utf-8"?>
<admin>
  <man>
    <name>gjz</name>
    <password>123</password>
    <key>1</key>
  </man>
  <man>
    <name>xm</name>
    <password>123</password>
    <key>0</key>
  </man>
</admin>
我想写一个函数如:get_key(string name,string password)
用这个函数返回XML文件中的KEY的值,具体在函数中的查询代码怎么写啊?(第一次用XML文件作数据源,希望大家给出具体代码)谢谢!

解决方案 »

  1.   

            public void get_key(string name, string password)
            {
                string path = @"d:\1.xml";
                DataSet ds = new DataSet();
                ds.ReadXml(path);//读XML
                DataTable dt = ds.Tables[0];            DataRow[] drs = dt.Select(string.Format("name='{0}' and password='{1}'", name, password));//查询
                if (drs.Length > 0)
                {
                    Label1.Text = "key为" + drs[0]["key"].ToString();
                }
                else
                {
                    Label1.Text = "失败";
                }
            }
      

  2.   

     XmlDocument MyXml = new XmlDocument(); MyXml.Load(@"我的.xml");
     XmlNode node = MyXml.SelectSingleNode("descendant:: man/name[text()=’”+ name +“’]  ”)   );
      

  3.   

    一楼的朋友的代码运行后出现列(“key”不属于表 man)的错误
      

  4.   

     public void get_key(string name, string password)
            {
                string path = @"d:\1.xml";
                DataSet ds = new DataSet();
                ds.ReadXml(path);//读XML
                DataTable dt = ds.Tables[0];            DataTable drs = dt.Select(string.Format("name='{0}' and password='{1}'", name, password));//查询
                if (drs.Length > 0)
                {
                    Label1.Text = "key为" + drs[0]["key"].ToString();
                }
                else
                {
                    Label1.Text = "失败";
                }
            }  DataTable drs = dt.Select(string.Format("name='{0}' and password='{1}'", name, password));//查询
    这样试试。
      

  5.   

    不行啊。1.drs不包含Length定义 
    2.无法将带 [] 的索引应用于“System.Data.DataTable”类型的表达式
      

  6.   

    wxg22526451  感谢!!现在弄好了。