XmlReadMode 枚举

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

**命名空间:**System.Data
**程序集:**System.Data(在 system.data.dll 中)

语法

声明
Public Enumeration XmlReadMode
用法
Dim instance As XmlReadMode
public enum XmlReadMode
public enum class XmlReadMode
public enum XmlReadMode
public enum XmlReadMode

成员

  成员名称 说明
由 .NET Compact Framework 支持 Auto 默认值。  

执行下列操作中的最合适的操作:

如果数据是 DiffGram,则将 XmlReadMode 设置为 DiffGram

- 或 -

如果数据集已经有架构,或者文档包含内联架构,则将 XmlReadMode 设置为 ReadSchema

- 或 -

如果数据集还没有架构且文档也不包含内联架构,则将 XmlReadMode 设置为 InferSchema

由 .NET Compact Framework 支持 DiffGram 读取 DiffGram,将 DiffGram 中的更改应用到 DataSet。语义与 Merge 操作的语义相同。与 Merge 操作一样,保留 RowState 值。向 ReadXml 的 DiffGram 输入只能使用 WriteXml 中的 DiffGram 输出来获得。 

目标 DataSet 必须与在它上面作为 DiffGram 调用 WriteXmlDataSet 有相同的架构。否则,DiffGram 合并操作就会失败,并引发异常。

由 .NET Compact Framework 支持 Fragment 针对 SQL Server 的实例读取 XML 片段(例如,通过执行 FOR XML 查询生成的 XML 片段)。当 XmlReadMode 设置为 Fragment 时,默认命名空间作为内联架构来读取。 
由 .NET Compact Framework 支持 IgnoreSchema 忽略任何内联架构并将数据读入现有的 DataSet 架构。如果任何数据与现有的架构不匹配,就会将这些数据丢弃(包括为 DataSet 定义的不同命名空间中的数据)。如果数据是 DiffGram,IgnoreSchemaDiffGram 具有相同的功能。 
由 .NET Compact Framework 支持 InferSchema 忽略任何内联架构,从数据推断出架构并加载数据。如果 DataSet 已经包含架构,就通过添加新表或者向现有的表添加列,来扩展当前架构。如果推断的表已经存在但是具有不同的命名空间,或者如果推断的列中有一些与现有的列冲突,则会引发异常。 
由 .NET Compact Framework 支持 InferTypedSchema 忽略任何内联架构,从数据推断出强类型架构并加载数据。如果无法从数据推断出类型,则会将其解释为字符串数据。如果 DataSet 已经包含架构,就通过添加新表或者通过向现有的表中添加列来扩展当前架构。如果推断的表已经存在但是具有不同的命名空间,或者如果推断的列中有一些与现有的列冲突,则会引发异常。 
由 .NET Compact Framework 支持 ReadSchema 读取任何内联架构并加载数据。如果 DataSet 已经包含架构,则可以将新表添加到架构中,但是如果内联架构中的任何表在 DataSet 中已经存在,则会引发异常。 

备注

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

提示

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

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

System.Data 命名空间