首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

21.8.2  写入XML输出结果

如上所述,DataSet支持在XML中定义其模式。可以从XML文档中读取数据,也可以把数据写入XML文档。

DataSet.WriteXml方法可以输出存储在DataSet中的各种数据,可以选择只输出数据,也可以输出数据和模式。下面是为上述Region示例编写的代码:

ds.WriteXml(".\\WithoutSchema.xml");

ds.WriteXml(".\\WithSchema.xml" , XmlWriteMode.WriteSchema);

第一个文件WithoutSchema.xml如下所示:

<?xml version="1.0" standalone="yes"?>

<NewDataSet>

   <Region>

      <RegionID>1</RegionID>

      <RegionDescription>Eastern                       </RegionDescription>

   </Region>

   <Region>

      <RegionID>2</RegionID>

      <RegionDescription>Western                       </RegionDescription>

   </Region>

   <Region>

      <RegionID>3</RegionID>

      <RegionDescription>Northern                      </RegionDescription>

   </Region>

   <Region>

      <RegionID>4</RegionID>

      <RegionDescription>Southern                      </RegionDescription>

   </Region>

</NewDataSet>

RegionDescription上的闭合标记在页面的右边因为数据库列定义为NCHAR(50)这是一个包含50个字符的字符串其中用空格填充。

WithSchema.xml文件生成的结果包含DataSetXML模式和数据

<?xml version="1.0" standalone="yes"?>

<NewDataSet>

   <xs:schema id="NewDataSet" xmlns=""

              xmlns:xs="http://www.w3.org/2001/XMLSchema"

              xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">

      <xs:element FTEL="NewDataSet" msdata:IsDataSet="true">

         <xs:complexType>

            <xs:choice maxOccurs="unbounded">

               <xs:element FTEL="Region">

                  <xs:complexType>

                     <xs:sequence>

                        <xs:element FTEL="RegionID"

                                    msdata:AutoIncrement="true"

                                    msdata:AutoIncrementSeed="1"

                                    type="xs:int" />

                        <xs:element FTEL="RegionDescription"

                                    type="xs:string" />

                     </xs:sequence>

                  </xs:complexType>

               </xs:element>

            </xs:choice>

         </xs:complexType>

      </xs:element>

   </xs:schema>

   <Region>

      <RegionID>1</RegionID>

      <RegionDescription>Eastern                       </RegionDescription>

   </Region>

   <Region>

      <RegionID>2</RegionID>

      <RegionDescription>Western                       </RegionDescription>

   </Region>

   <Region>

      <RegionID>3</RegionID>

      <RegionDescription>Northern                     </RegionDescription>

   </Region>

   <Region>

      <RegionID>4</RegionID>

      <RegionDescription>Southern                     </RegionDescription>

   </Region>

</NewDataSet>

注意,使用msdata模式中的文件,定义DataSet中列的附加属性,例如AutoIncrement AutoIncrementSeed,这些属性直接对应于DataColumn上的可定义属性。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论