ランタイムアプリケーションの設定を変更する方法
-
23-08-2019 - |
質問
実行時にアプリケーション設定ファイルの 1 つのキーを変更しようとしていますが、機能しません。
私はそのようにしています:
ConfigurationSettings.AppSettings["XPTO"] = "HELLO";
ファイル上ではなくメモリ内でのみ変更されるようです。
誰かこれを行う方法を知っていますか?
ありがとう。
解決
私のものを見てください .NET設定ファイルの概要...要するに、ユーザースコープの設定が必要だと思います。より期待どおりに動作します。
編集: を使用している場合は、 Visual Studio の設定デザイナー, 次に、「スコープ」を「ユーザー」に変更するだけです。そうでない場合は、同等のことをプログラムで実行できるはずです。
他のヒント
のAppSettingsファイルが書き込み可能になるように設計されていません。などのWebサービスのURLの、DB接続文字列
:実行時に変更されません設定を記憶するように設計されているが、時間すなわちかけて変更されることがあります。だから、あなたが再ロバ、この値がそこに格納されるべきかどうかを、実際にファイルを更新することは可能かもしれないが。
タグ...あなたのアプリは、ファイルの書き込み権限を持っていると仮定すると、
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); // the config that applies to all users
AppSettingsSection appSettings = config.AppSettings;
if (appSettings.IsReadOnly() == false)
{
appSettings("Key").Value = "new value";
config.Save();
}
私がスローされる可能性のあるすべての例外を無視しています...
所属していません StackOverflow