none
アプリケーション構成ファイル(app.config)からSaveされた値ではなく初期値を取得する方法 RRS feed

  • 質問

  • C#に限った話ではないかもしれませんが・・・

    アプリケーション構成ファイル(app.config)から、Properties.Settings.Default.Save()された値ではなく元々の初期値を取得するような方法があるかご存知でしたら教えてください。

    app.config内の値はProperties.Settings.Default.Save()を行うことで上書き保存が可能です。

    上書きされたapp.configはC:\Users\[username]\AppData\Localに保存され、実行ファイルディレクトリ内のapp.configが更新されることはありません。

    実行ファイルディレクトリ内のapp.configの中にはアプリケーション配布時の値が恒久的に残るものだと思われます。

    場合によってこの実行ファイルディレクトリ内のapp.configからアプリケーション配布時の初期値を取得したいと思っておりますが可能でしょうか?

    Properties.Settings.Default.Reset()を使用すると、全ての構成値が既定値に戻ってしまうため使用できません。

    app.config内の特定の値だけ、場合によっては普通にProperties.Settings.Default.[keyname]で取得したり、場合によっては実行ファイルディレクトリ内のapp.configから初期値を取得したりしたいと思っています。

    よろしくお願いします。

    2012年5月14日 4:45

回答

すべての返信

  • Settings.Default.Properties[name].DefaultValue

    で取れたかと。

    2012年5月14日 5:01
  • Hongliang様

    ご投稿をありがとうございました!

    Properties.Settings.Default.Properties[name].DefaultValue

    で確かに初期値が取得できました。

    この方法だとobject型で値が返ってきます。下記方法で型も取得するとよいかもしれません。

    Properties.Settings.Default.Properties[name].PropertyType

    ありがとうございました!

    2012年5月14日 5:51