かなり大きな構成のアプリがあります。各パラメーターのすべての構成セクションは、.Net ConfigurationProperty属性で定義され、すべてDefaultValueプロパティがあります。
私たちの製品が国間で、そしてある国のクライアントでさえも高度にカスタマイズ可能になるにつれて、大きな構成ファイルを編集できるようにするConfigurator.exeがあります。
このConfigurator.exeでは、定義されている非常に多くのDefaultValueプロパティにアクセスできれば、本当にすばらしいでしょう...しかし、によって生成されたこれらのプロパティにアクセスする方法については、私にはわかりません。属性。
例えば:
public class MyCollection : ConfigurationElementCollection
{
public MyCollection ()
{
}
[ConfigurationProperty(MyAttr,IsRequired=false,DefaultValue=WantedValue)]
public MyAttributeType MyAttribute
{
//... property implementation
}
}
私が必要としているのは、可能な限り最も一般的な値であるWantedValueにプログラムでアクセスすることです。(それ以外の場合は、定義されたすべてのConfigSectionsを手動で参照し、各フィールドのDefaultValuesを収集してから、コンフィギュレーターがこれらの値を使用することを確認します...)
ファンシーでは、次のようになります。MyCollection.GetListConfigurationProperty()は、プロパティを呼び出すことができるConfigurationPropertyAttributeオブジェクトを返します:Name、IsRequired、IsKey、IsDefaultCollection、およびDefaultValue
何か案が ?