ADO.NET 通过非连接的 DataSet 和 DataTable 支持 XML。这两个对象都能通过内建的智能把行的集合转换成 XML 文档。

 

DataSet 的所有 XML 方法:

GetXml() 得到以 XML 格式表现的 DataSet 中的数据并将其作为单个字符串
WriteXml() 把 DataSet 的内容写入文件或 TextWriter、XmlWriter、Stream 对象
ReadXml() 从文件或 TextWriter、XmlWriter、Stream 对象读取 XML ,并填充 DataSet
GetXmlSchema() 以字符串形式得到 XML 架构,不返回数据
WriteXmlSchema() 只把描述 DataSet 结构的 XML 架构写入文件或 TextWriter、XmlWriter、Stream 对象
ReadXmlSchema() 从文件或 TextWriter、XmlWriter、Stream 对象读取 XML 架构,并配置 DataSet 的结构
InferXmlSchema() 从文件或 TextWriter、XmlWriter、Stream 对象读取 DataSet 内容的 XML 文档,并用它推断 DataSet 应有的结构。可以替换ReadXmlSchema(),但并不保证保存所有的数据类型的信息

 

 

把 DataSet 转换为 XML

       创建 DataSet 后,就可以用它生成一个描述 DataSet 结构的 XML 架构文件以及一个包含每行内容的 XML 文件。下面的代码可以把 DataSet 保存到一个 XML 文件里:

].ConnectionString;
SqlConnection conn = new SqlConnection(conStr);
SqlCommand cmd = new SqlCommand("select EmployeeID,TitleOfCourtesy,FirstName,LastName from employees", conn);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable("Employees");
sda.Fill(dt);
 
string xmlFile = Server.MapPath("Employees.xml");
dt.WriteXml(xmlFile, XmlWriteMode.WriteSchema);

相关文章: