XmlReadMode 枚举

定义

指定如何将 XML 数据和关系架构读入 DataSet

public enum class XmlReadMode
public enum XmlReadMode
type XmlReadMode = 
Public Enum XmlReadMode
继承
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 设置为 Fragment 时,将默认命名空间作为内联架构读取。

IgnoreSchema 2

忽略任何内联架构并将数据读入现有的 DataSet 架构。 如果任何数据与现有架构不匹配,就会丢弃这些数据(包括为 DataSet 定义的不同命名空间中的数据)。 如果数据是 DiffGram,IgnoreSchemaDiffGram 具有相同的功能。

InferSchema 3

忽略任何内联架构,从数据推断出架构并加载数据。 如果 DataSet 已包含架构,通过添加新表或将列添加到现有表来扩展当前架构。 如果推断表已经存在,但命名空间不同,或者任何推断列与现有列冲突,则会引发异常。

InferTypedSchema 6

忽略任何内联架构,从数据推断出强类型架构并加载数据。 如果无法从数据中推断出类型,则将其解释为字符串数据。 如果 DataSet 已包含架构,则通过添加新表或向现有表添加列来扩展当前架构。 如果推断表已经存在,但命名空间不同,或者任何推断列与现有列冲突,则会引发异常。

ReadSchema 1

读取任何内联架构并加载数据。 如果 DataSet 已包含架构,则可将新表添加到架构中,但是如果内联架构中的任何表在 DataSet 中已经存在,则会引发异常。

注解

设置方法的 参数DataSet.ReadXml时,ReadMode请使用此枚举的成员。

注意

Auto 模式可能比设置为 XmlReadMode 显式选项慢。

Auto 执行其中最合适的操作:

  • 如果数据是 DiffGram,请将 XML 读取模式设置为 DiffGram

  • 如果数据集已有架构,或者文档包含内联架构,则将 XML 读取模式设置为 ReadSchema

  • 如果数据集尚没有架构,并且文档不包含内联架构,请将 XML 读取模式设置为 InferSchema

适用于