例如xml文件结构如下:
<root>
<company>
         <title>
                   <staff>
                            <task></task>
                            <task></task>
                   </staff>
</title>
</company>
</root>
希望转换成的DataTable结构如下
root company title staff task
有什么办法吗? 

解决方案 »

  1.   

    fileName = "users_2.xml";
      DataSet myDs = new DataSet();
      
      try
      {
        FileStream fin ;
        fin = new FileStream(Server.MapPath("./files/"+fileName), FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
        myDs.ReadXml(fin);
        fin.Close();    
      }
      catch (Exception ex)
      { 
       Response.Write(ex.Message);
      }  //绑定修改前的XML
      OldData.DataSource = myDs.Tables[0].DefaultView;
      OldData.DataBind();
      

  2.   

    楼上正解,DataSet就可以直接读取XML文档
      

  3.   

    按照这样的方法,得到的DataSet实际上包含多个表,分别是:company,title,staff和task,因为这样的xml形式其实是用sql语句“select ... for xml auto,xmldata”获得的,所以我想知道是否有方法可以直接将得到的这个xml数据转换成不使用"for xml auto"获得的DataSet形式,也就是只包含一个表
      

  4.   

    自己创建XmlDocument对象,自己分析吧/