XmlWriteMode和XmlReadMode的作用是什么?

本文介绍了XmlWriteMode和XmlReadMode枚举的作用及其使用场景。XmlWriteMode决定了XML文件中数据集的保存方式,包括是否包含架构信息及原始数据。而XmlReadMode则定义了XML文件如何被读取并应用到数据集中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

XmlWriteMode枚举通常是作为DataSet.WriteXml()方法的第二个参数使用。它决定使用哪种格式保存XML
 
IgnoreSchema——默认值。只写数据集的数据,不带有任何架构信息。如果数据集内无数据则不生成文件。
WriteSchema——在向.xml文件写入数据集的数据的同时将数据集的架构信息写入.xsd文件。
DiffGram——同时写入原始数据和当前数据。
 
那么如何在XmlWriteMode.WriteSchema模式和XmlWriteMode.DiffGram模式之间做出正确选择呢?
 
使用XmlWriteMode.WriteSchema模式可以得到一个几乎完整的数据集,包括架构和数据,但是数据只有当前值。XmlWriteMode.DiffGram模式能够获得数据集中的所有值,包括当前值和原始值,但是这种模式没有数据集架构。具体选择哪种模式要看目的是什么。如果希望用XML填充一个新的DataSet,在这个新的DataSet里都是完全干净的行,那么就应该采用XmlWriteMode.WriteSchema模式。如果目的是利用XML文件在不同数据集之间传递更改,那么就应该选择XmlWriteMode.DiffGram模式。
 
XmlReadMode枚举通常用于DataSet.ReadXml()方法的第二个参数。它决定如何将XML读入数据集:
 
Auto——默认值。数据集会尝试读取XML的最佳方案。
DiffGram——读取DiffGram,并将其中的更改应用于DataSetRowState予以保留。
Fragment——读取XML文档。任何内联命名空间将作为架构读入。主要用于读取标准XML文档。
IgnoreSchema——忽略架构,并试图将XML读入现有数据集架构,不符合现有架构的数据被丢弃。如果数据集没有任何架构,那么所有数据全部被丢弃。
InferSchema——忽略XML的所有架构信息,而且根据XML的数据推断架构。
ReadSchema——读取内联架构信息和数据,并尝试将其添加到数据集架构。如果数据集里已经有一个架构就会引发异常。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值