XmlReadMode 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定如何将 XML 数据和关系架构读入 DataSet。
public enum class XmlReadMode
public enum XmlReadMode
type XmlReadMode =
Public Enum XmlReadMode
- 继承
字段
Auto | 0 | 默认的读取模式。 |
DiffGram | 4 | 读取 DiffGram,将 DiffGram 中的更改应用到 DataSet。 语义与 Merge(DataSet) 操作的语义相同。 与 Merge(DataSet) 操作一样,保留 RowState 值。 对 ReadXml(XmlReader) 的 DiffGram 输入只能使用 WriteXml(Stream) 中的 DiffGram 输出来获得。 目标 DataSet 必须与在其中将 WriteXml 作为 DiffGram 调用的 DataSet 具有相同架构。 否则,DiffGram 合并操作会失败并引发异常。 |
Fragment | 5 | 针对 SQL Server 的实例读取 XML 片段(例如,通过执行 FOR XML 查询生成的 XML 片段)。 当 XmlReadMode 设置为 |
IgnoreSchema | 2 | 忽略任何内联架构并将数据读入现有的 DataSet 架构。 如果任何数据与现有架构不匹配,就会丢弃这些数据(包括为 DataSet 定义的不同命名空间中的数据)。 如果数据是 DiffGram, |
InferSchema | 3 | 忽略任何内联架构,从数据推断出架构并加载数据。 如果 DataSet 已包含架构,通过添加新表或将列添加到现有表来扩展当前架构。 如果推断表已经存在,但命名空间不同,或者任何推断列与现有列冲突,则会引发异常。 |
InferTypedSchema | 6 | 忽略任何内联架构,从数据推断出强类型架构并加载数据。 如果无法从数据中推断出类型,则将其解释为字符串数据。 如果 DataSet 已包含架构,则通过添加新表或向现有表添加列来扩展当前架构。 如果推断表已经存在,但命名空间不同,或者任何推断列与现有列冲突,则会引发异常。 |
ReadSchema | 1 | 读取任何内联架构并加载数据。 如果 DataSet 已包含架构,则可将新表添加到架构中,但是如果内联架构中的任何表在 DataSet 中已经存在,则会引发异常。 |
注解
设置方法的 参数DataSet.ReadXml时,ReadMode
请使用此枚举的成员。
注意
Auto
模式可能比设置为 XmlReadMode 显式选项慢。
Auto
执行其中最合适的操作:
如果数据是 DiffGram,请将 XML 读取模式设置为
DiffGram
。如果数据集已有架构,或者文档包含内联架构,则将 XML 读取模式设置为
ReadSchema
。如果数据集尚没有架构,并且文档不包含内联架构,请将 XML 读取模式设置为
InferSchema
。