XmlValidatingReader.EntityHandling 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,该值指定读取器如何处理实体。
public:
property System::Xml::EntityHandling EntityHandling { System::Xml::EntityHandling get(); void set(System::Xml::EntityHandling value); };
public System.Xml.EntityHandling EntityHandling { get; set; }
member this.EntityHandling : System.Xml.EntityHandling with get, set
Public Property EntityHandling As EntityHandling
属性值
其中一个 EntityHandling 值。 如果未 EntityHandling 指定,则默认为 EntityHandling.ExpandEntities。
例外
指定了无效值。
注解
注释
该 XmlValidatingReader 类在 .NET Framework 2.0 中已过时。 可以使用类和Create方法创建验证XmlReader实例XmlReaderSettings。 有关详细信息,请参阅 XmlReader 引用页的“备注”部分。
此属性可以更改,并在下一次 Read 调用后生效。
ExpandCharEntities设置为时EntityHandling,属性值仅部分规范化。 读取器独立于相邻实体引用节点的内容规范化每个单独的文本节点。
为了说明实体处理模式之间的差异,请考虑以下 XML:
<!DOCTYPE doc [<!ENTITY num "123">]>
<doc> A # </doc>
如果 EntityHandling 设置为 ExpandEntities “doc”元素节点,则包含一个包含展开实体文本的文本节点:
| 深度 | NodeType | 名称 | 价值 |
|---|---|---|---|
| 1 | 文本 | A 123 |
当设置为ExpandCharEntitiesWhitespaceHandling“重要”或“全部”时EntityHandling,“doc”元素将展开字符实体,并将常规实体作为节点返回:
| 深度 | NodeType | 名称 | 价值 |
|---|---|---|---|
| 1 | 文本 | A | |
| 1 | EntityReference | 数字 | |
| 1 | 显著空白符 |