次の方法で共有


GetXmlNamespaceMaps 型の変更

XmlAttributeProperties.XmlNamespaceMapsのバッキング プロパティが String から Hashtable に変更されました。

導入されたバージョン

.NET 9 Preview 3

以前の動作

以前は、 XmlNamespaceMaps のバッキング プロパティが Stringされていました。 ただし、 dependencyObject.GetValue(XmlNamespaceMapsProperty) によって返される値は Hashtable 型であり、 GetXmlNamespaceMaps(DependencyObject) 実装はそれを型キャストして Stringにキャストしようとしましたが、その結果、 InvalidCastExceptionが発生しました。

さらに、 SetXmlNamespaceMaps(DependencyObject, String) メソッドは String 引数を受け取りました。

新しい動作

XmlNamespaceMapsのバッキングプロパティは.NET 9以降Hashtableに変わり、InvalidCastExceptionによってGetXmlNamespaceMaps(DependencyObject)がスローされなくなります。

さらに、 SetXmlNamespaceMaps(DependencyObject, Hashtable) メソッドは、 Hashtable 引数を受け入れるようになりました。

カテゴリの変更

この変更は 動作の変更 であり、 ソースの互換性にも影響する可能性があります。

変更の理由

この変更は InvalidCastException がスローされるのを防ぐために行われました。

文字列の代わりに HashtableSetXmlNamespaceMaps API に渡します。

影響を受ける API