2017-02-24 4 views
2

KeyValueConfigurationCollection is not sealedKeyValueConfigurationCollectionが封印されていないのはなぜですか?

他のすべてのコンフィギュレーション・コレクションがnetframeworkcorefxの両方のために密封されている:
NameValueConfigurationCollectionConnectionStringSettingsCollectionProviderSettingsCollectionSchemeSettingElementCollection

corefxリポジトリには、KeyValueConfigurationCollectionのサブクラスがいくつかありますが、テスト目的でのみあります。

KeyValueConfigurationCollectionは、テスト用にのみシールされていないか、それ以外の設計上の理由がありますか?

+0

派生するものがあれば、封印することはできません。あなた自身の質問にあなたが答えたようです。 –

+0

@PeterRitchie 'corefx'のための' System.Configuration'のテストとして書きます。テストの結果が恩恵を受けるならば、私はAPIの変更を提案すべきだと思いますか? – FireAlkazar

+1

これらのテストを行う方法が他にない場合は、合理的なメリットだと思います。しかし、これまで存在していなかった統合の可能性が開かれ、新しいサポートが可能になります。だから、長所と短所。 –

答えて

0

クラスは開封されているため、他のクラスは継承できません。おそらく、人々はそれをサブクラス化したいと考えられていたので、それは開封されたままになりました。 であることは、テストケースのサブクラスであり、正しいことであることを示しています。サブクラス化することでテストすることができれば、おそらくそれが有益な別のシナリオがあります。

関連する問題