NetDataContractSerializer.ReadObject 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
读取 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 设置为 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 元素的名称和命名空间,并将这些值与预期的名称和命名空间进行比较。 可利用以下各项设置预期的名称和命名空间:传入构造函数的类型的数据协定名称和命名空间,或者是传入构造函数的 rootName 和 rootNamespace 值(如果有)。
可以在下面的构造函数中设置 rootName 和 rootNamespace:NetDataContractSerializer(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
参数
- verifyObjectName
- Boolean
若要检查包含的 XML 元素名称和命名空间是否对应于用于构造序列化程序的根名称和根命名空间,则为 true;否则为 false 以跳过验证。
返回
已反序列化的对象。
例外
reader 设置为 null。
注解
verifyObjectName 参数使用以下方法来确定其能否读取某个对象:检查读取器所在的 XML 元素的名称和命名空间,并将这些值与预期的名称和命名空间进行比较。 可利用以下各项设置预期的名称和命名空间:传入构造函数的类型的数据协定名称和命名空间,或者是传入构造函数的 rootName 和 rootNamespace 值(如果有)。
可以在下面的构造函数中设置 rootName 和 rootNamespace:NetDataContractSerializer(String, String)、NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString) 和 NetDataContractSerializer(XmlDictionaryString, XmlDictionaryString, StreamingContext, Int32, Boolean, FormatterAssemblyStyle, ISurrogateSelector)。
重要
使用不受信任的数据调用此方法存在安全风险。 仅使用受信任的数据调用此方法。 有关详细信息,请参阅 验证所有输入。