ADO.NET 快速入门(六):读写 XML
来源:互联网 发布:西文数据库 编辑:程序博客网 时间:2024/06/05 16:15
ADO.NET 和 DataSet 可以读写 XML Schema 和 XML。获取更多信息,请参考 How do I...Use XML and the DataSet?
DataSet 的 Schemas,或者 tables、columns、constraints 等等,可以用几种方式定义。一种方法是利用特性和方法创建他们(Tables.Add、Columns.Add、等等)。在 DataSet 内部建立了一个 Schema,可以作为容器保存数据。另一种方法是使用 SqlDataAdapter 或者 OleDbDataAdapter。当你使用这些命令,如果 DataSet 中的 Schema 不存在,则创建它。
XML 是 ADO.NET 的内部构造。若干支持 XML 的方法已经得到实现。GetXmlSchema 方法允许获取 DataSet 的 Schema 作为 XSD Schema。比如,从数据库加载 DataSet,可以从中获取到 XSD Schema:
示例1:
Console.WriteLine(myDataSet.GetXmlSchema());
这会返回 XSD 兼容 XML Schema,作为 DataSet 的 Schema。
XML 表达方法也是通过 GetXml 方法检索。
示例2:
Console.WriteLine(myDataSet.GetXml());
示例3显示了从数据库加载数据,然后输出 XSD Schema 和 XML 数据。
示例3:
SqlConnection myConnection = new SqlConnection("server=(local);Integrated Security=SSPI;database=northwind"); SqlDataAdapter myDataAdapter = new SqlDataAdapter("SELECT TOP 1 * FROM Customers", myConnection); DataSet myDataSet = new DataSet(); myDataAdapter.Fill(myDataSet, "Customers"); // 获取 XML Schema Console.WriteLine(myDataSet.GetXmlSchema()); // 获取 XML 数据 Console.WriteLine(myDataSet.GetXml());
获取 XML Schema:
<?xml version="1.0" encoding="utf-16"?><xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="Customers"> <xs:complexType> <xs:sequence> <xs:element name="CustomerID" type="xs:string" minOccurs="0" /> <xs:element name="CompanyName" type="xs:string" minOccurs="0" /> <xs:element name="ContactName" type="xs:string" minOccurs="0" /> <xs:element name="ContactTitle" type="xs:string" minOccurs="0" /> <xs:element name="Address" type="xs:string" minOccurs="0" /> <xs:element name="City" type="xs:string" minOccurs="0" /> <xs:element name="Region" type="xs:string" minOccurs="0" /> <xs:element name="PostalCode" type="xs:string" minOccurs="0" /> <xs:element name="Country" type="xs:string" minOccurs="0" /> <xs:element name="Phone" type="xs:string" minOccurs="0" /> <xs:element name="Fax" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> </xs:element></xs:schema>
获取 XML 数据:
<NewDataSet> <Customers> <CustomerID>ALFKI</CustomerID> <CompanyName>Alfreds Futterkiste</CompanyName> <ContactName>Maria Anders</ContactName> <ContactTitle>Sales Representative</ContactTitle> <Address>Obere Str. 57</Address> <City>Berlin</City> <PostalCode>12209</PostalCode> <Country>Germany</Country> <Phone>030-0074321</Phone> <Fax>030-0076545</Fax> </Customers></NewDataSet>
0 0
- ADO.NET 快速入门(六):读写 XML
- ADO.NET 快速入门(一):ADO.NET 概述
- ADO.NET 快速入门(一):ADO.NET 概述
- C#,ado.net读写xml
- ADO.NET 快速入门(十二):从 SQL Server 生成 XML 数据
- ADO.NET 快速入门(十五):ADO 应用转换为 ADO.NET
- ADO.net入门(六):绑定到窗体上观看
- ADO.net入门(六):绑定到窗体上观看
- ADO.NET 2.0 快速入门(asp.net)
- ADO.NET 快速入门(二):执行命令
- ADO.NET 快速入门(四):从数据库填充 DataSet
- ADO.NET 快速入门(五):从 DataSet 更新数据库
- ADO.NET 快速入门(七):使用数据库事务
- ADO.NET 快速入门(八):处理 Errors
- ADO.NET 快速入门(九):使用关系型数据
- ADO.NET 快速入门(十):过滤数据
- ADO.NET 快速入门(十一):连接池
- ADO.NET 快速入门(二):执行命令
- 外观模式
- LeetCode101 Symmetric Tree
- I NEED A OFFER!(dp).HDU
- CountDownTimer的使用
- 请求转发和重定向
- ADO.NET 快速入门(六):读写 XML
- LeetCode102 Binary Tree Level Order Traversal
- java面向对象三大特性--继承
- C++,关于指针形参”值传递VS地址传递“的问题
- OpenCV2.4.9在64位Win7+VS2012下的配置过程
- 扑克牌问题之排序
- 第二本书unit9 vsftpd服务
- 前端学习资源收集
- ADO.NET 快速入门(七):使用数据库事务