GetXmlNamespaceMaps 类型更改

后盾属性XmlAttributeProperties.XmlNamespaceMaps已从String更改为Hashtable

已引入的版本

.NET 9 预览版 3

以前的行为

以前,后盾属性 XmlNamespaceMapsString。 但是,dependencyObject.GetValue(XmlNamespaceMapsProperty) 返回的值是 Hashtable 类型,并且 GetXmlNamespaceMaps(DependencyObject) 实现尝试将其类型转换为 String,这导致了 InvalidCastException

此外,该方法 SetXmlNamespaceMaps(DependencyObject, String) 接受参数 String

新行为

从 .NET 9 开始,支持属性 XmlNamespaceMapsHashtableInvalidCastException 不再由 GetXmlNamespaceMaps(DependencyObject) 属性引发。

此外,该方法 SetXmlNamespaceMaps(DependencyObject, Hashtable) 现在接受参数 Hashtable

更改类别

此更改是行为 更改 ,也可能会影响 源兼容性

更改原因

进行此更改旨在防止引发 InvalidCastException

Hashtable 而不是字符串传递给 SetXmlNamespaceMaps API。

受影响的 API