如何通过内存表datatable 内存表结构如下
:linkman
name sex比尔盖茨 男杨过 男
阿娇 美女输出下面的东西<linkmanlist> 
<linkman name="比尔盖茨" sex="男"> 
<linkman name="杨过" sex="男"> 
<linkman name="阿娇" sex="美女"> 
</linkmanlist> 
dt.Writexml

解决方案 »

  1.   

    XmlDocument doc = new XmlDocument();
    XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8", "yes");
    XmlElement root = doc.DocumentElement;
    doc.InsertBefore(dec, root);
    XmlElement rootNode = doc.CreateElement("linkmanlist");
    foreach (DataRow dr in dt.Rows)
    {
        XmlElement childNode = doc.CreateElement("linkman");
        childNode.SetAttribute("name", dr["name"].ToString());
        childNode.SetAttribute("sex", dr["sex"].ToString());
        rootNode.AppendChild(childNode);
    }
    doc.AppendChild(rootNode);
    return doc.OuterXml;
      

  2.   

    哎,上个帖子已经回了,直接利用xsd就成,实际就是一张纸,只是看你自己愿不愿意自己翻过去而已。看来lz是完全懒得动手去翻啊。算啦,你不愿意翻,我来翻好了xsd文件XMLFile.xsd
    <?xml version="1.0" encoding="utf-8"?>
    <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:element name="linkmanlist">
        <xs:complexType>
          <xs:sequence>
            <xs:element maxOccurs="unbounded" name="linkman">
              <xs:complexType>
                <xs:attribute name="name" type="xs:string" use="required" />
                <xs:attribute name="sex" type="xs:string" use="required" />
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:schema>c# code  System.Data.DataSet ds = new System.Data.DataSet();
            ds.ReadXmlSchema(MapPath("~/Config/XMLFile.xsd"));
           System.Data.DataTable dt= ds.Tables["linkman"];
            var row=dt.NewRow();
            row["name"]= "杨过";
            row["sex"]="男";
            dt.Rows.Add(row);
            ds.AcceptChanges();
            ds.WriteXml(MapPath("~/config/test.xml"));ps:编写xsd实际并不困难,直接在vs里打开xml文件,vs的xml工具栏里有一项创建架构,点击它,vs会自动根据你的xml文件格式创建一个xsd文件,然后保存该xsd文件入你的工程就可以直接用了。另:打开xsd文件,在xml架构资源管理器里,你还可以看到当前xml架构的节点间的层级关系,知道这个层级关系可以方便你编写代码。