NetDataContractSerializer.ReadObject 方法

定义

读取 XML 流或文档,并返回反序列化的对象。

重载

ReadObject(XmlReader)

使用 XmlDictionaryReader 读取 XML 流或文档,并返回反序列化的对象。

ReadObject(XmlDictionaryReader, Boolean)

使用 XmlDictionaryReader 读取 XML 流或文档并返回反序列化的对象;还检查对象数据是否符合用于创建序列化程序的名称和命名空间。

ReadObject(XmlReader, Boolean)

使用 XmlDictionaryReader 读取 XML 流或文档并返回反序列化的对象;还检查对象数据是否符合用于创建序列化程序的名称和命名空间。

注解

重要

使用不受信任的数据调用此方法存在安全风险。 仅使用受信任的数据调用此方法。 有关详细信息,请参阅 验证所有输入

ReadObject(XmlReader)

使用 XmlDictionaryReader 读取 XML 流或文档,并返回反序列化的对象。

public:
 override System::Object ^ ReadObject(System::Xml::XmlReader ^ reader);
public override object ReadObject (System.Xml.XmlReader reader);
override this.ReadObject : System.Xml.XmlReader -> obj
Public Overrides Function ReadObject (reader As XmlReader) As Object

参数

reader
XmlReader

用于读取 XML 流或文档的 XmlReader

返回

已反序列化的对象。

例外

reader 设置为 null

注解

重要

使用不受信任的数据调用此方法存在安全风险。 仅使用受信任的数据调用此方法。 有关详细信息,请参阅 验证所有输入

适用于

ReadObject(XmlDictionaryReader, Boolean)

使用 XmlDictionaryReader 读取 XML 流或文档并返回反序列化的对象;还检查对象数据是否符合用于创建序列化程序的名称和命名空间。

public:
 override System::Object ^ ReadObject(System::Xml::XmlDictionaryReader ^ reader, bool verifyObjectName);
public override object ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName);
override this.ReadObject : System.Xml.XmlDictionaryReader * bool -> obj
Public Overrides Function ReadObject (reader As XmlDictionaryReader, verifyObjectName As Boolean) As Object

参数

reader
XmlDictionaryReader

用于读取 XML 流或文档的 XmlDictionaryReader

verifyObjectName
Boolean

若要检查包含的 XML 元素名称和命名空间是否对应于用于构造序列化程序的根名称和根命名空间,则为 true;否则为 false 以跳过验证。

返回

已反序列化的对象。

例外

reader 设置为 null

注解

verifyObjectName 参数使用以下方法来确定其能否读取某个对象:检查读取器所在的 XML 元素的名称和命名空间,并将这些值与预期的名称和命名空间进行比较。 可利用以下各项设置预期的名称和命名空间:传入构造函数的类型的数据协定名称和命名空间,或者是传入构造函数的 rootNamerootNamespace 值(如果有)。

可以在下面的构造函数中设置 rootNamerootNamespaceNetDataContractSerializer(String, String)NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString)NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString, StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)

重要

使用不受信任的数据调用此方法存在安全风险。 仅使用受信任的数据调用此方法。 有关详细信息,请参阅 验证所有输入

适用于

ReadObject(XmlReader, Boolean)

使用 XmlDictionaryReader 读取 XML 流或文档并返回反序列化的对象;还检查对象数据是否符合用于创建序列化程序的名称和命名空间。

public:
 override System::Object ^ ReadObject(System::Xml::XmlReader ^ reader, bool verifyObjectName);
public override object ReadObject (System.Xml.XmlReader reader, bool verifyObjectName);
override this.ReadObject : System.Xml.XmlReader * bool -> obj
Public Overrides Function ReadObject (reader As XmlReader, verifyObjectName As Boolean) As Object

参数

reader
XmlReader

用于读取 XML 流或文档的 XmlReader

verifyObjectName
Boolean

若要检查包含的 XML 元素名称和命名空间是否对应于用于构造序列化程序的根名称和根命名空间,则为 true;否则为 false 以跳过验证。

返回

已反序列化的对象。

例外

reader 设置为 null

注解

verifyObjectName 参数使用以下方法来确定其能否读取某个对象:检查读取器所在的 XML 元素的名称和命名空间,并将这些值与预期的名称和命名空间进行比较。 可利用以下各项设置预期的名称和命名空间:传入构造函数的类型的数据协定名称和命名空间,或者是传入构造函数的 rootNamerootNamespace 值(如果有)。

可以在下面的构造函数中设置 rootNamerootNamespaceNetDataContractSerializer(String, String)NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString)NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString, StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)

重要

使用不受信任的数据调用此方法存在安全风险。 仅使用受信任的数据调用此方法。 有关详细信息,请参阅 验证所有输入

适用于