XmlReader.ReadContentAsObject 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将当前位置的文本内容作为 Object 读取。
public:
virtual System::Object ^ ReadContentAsObject();
public virtual object ReadContentAsObject ();
abstract member ReadContentAsObject : unit -> obj
override this.ReadContentAsObject : unit -> obj
Public Overridable Function ReadContentAsObject () As Object
返回
作为最适当的公共语言运行时 (CLR) 对象的文本内容。
例外
试图进行的强制转换无效。
该字符串格式无效。
在上一次异步操作完成之前调用了 XmlReader 方法。 在此情况下,会引发 InvalidOperationException 并显示消息“异步操作已在进行中。”
注解
此方法连接文本、空白、重大空白和 CDATA 部分,并跳过任何注释或处理指令。 会自动解析实体引用。
如果键入内容,读取器将返回由属性指定的 ValueType 最合适类型的装箱 CLR。 如果内容是列表类型,则读取器返回相应类型的装箱对象数组。
如果内容未类型化,读取器将以字符串的形式返回内容。
下表介绍了此方法如何处理每个节点类型。
XmlNodeType | 返回值 | 读取器行为 |
---|---|---|
Text CDATA Whitespace SignificantWhitespace EntityReference EndEntity |
将文本、CDATA、空白和有效空白节点的串联内容转换为所请求的类型。 | 移至下一个开始元素或结束元素标记。 实体引用自动展开。 |
Attribute |
与调用 XmlConvert.ToXxx 属性值相同。 |
读取器将保留在当前位置 |
Comment ProcessingInstruction |
忽略处理指令 (PI) 或注释,读取 PI 或注释后面的串联文本内容。 | 移至下一个开始元素或结束元素标记。 实体引用自动展开。 |
EndElement |
如果读取器是验证读取器的架构,则元素的值 (设置为Schema) ValidationType;否则为空字符串。 | 读取器仍保留在当前位置。 |
Element XmlDeclaration None Document DocumentType Notation Entity DocumentFragment |
引发 InvalidOperationException。 | 未定义,尽管通常读取器将保留在当前位置。 |
有关详细信息,请参阅参考页的 XmlReader “备注”部分和 W3C XML 架构第 2 部分:数据类型 建议。
有关此方法的异步版本,请参阅 ReadContentAsObjectAsync。