<AppSettings>
これは、 :のエントリを変更できるようにする方法です。
internal static bool SetSetting(string Key, string Value)
{
bool result = false;
try
{
System.Configuration.Configuration config =
ConfigurationManager.OpenExeConfiguration(
ConfigurationUserLevel.None);
config.AppSettings.Settings.Remove(Key);
var kvElem= new KeyValueConfigurationElement(Key, Value);
config.AppSettings.Settings.Add(kvElem);
// Save the configuration file.
config.Save(ConfigurationSaveMode.Modified);
// Force a reload of a changed section.
ConfigurationManager.RefreshSection("appSettings");
result = true;
}
finally
{ }
return result;
} // function
更新後にセクションを更新する必要があることがわかりましたappSettings
。
この関数は、キーを追加する前にキーを削除して、二重入力を回避します。これは、キーが以前に存在しなかった場合にも機能します。エラーがある場合はfalseを返し、成功するとtrueを返します。設定を読み取る方法は簡単で、完全を期すためにリストされています。
internal static string GetSetting(string Key)
{
string result = null;
try
{
result = ConfigurationManager.AppSettings[Key];
}
finally
{ }
return result;
} // function
エラーを抑制するために、 try...finallyブロックで囲んでいることに注意してください。エラーが発生した場合、GetSettingは単にnullを返し、SetSettingはfalseを返します。これにより処理が簡単になりますが、例外が必要な場合でも追加できます
catch (Exception) { throw; }
呼び出し元に例外をスローします。または、デバッグ用に次を追加できます。
#if DEBUG
catch (Exception ex) {
System.Diagnostics.Debug.WriteLine(ex.ToString());
}
#endif
「デバッグ」構成を選択した場合、Visual Studioの[出力]ウィンドウに例外が表示されますが、コードは続行されます。
注(同様のトピックへの相互参照):
applicationSettingsセクションは、「User」スコープと「Application」スコープを区別し、文字列だけでなくさまざまなデータ型をサポートするため、異なります。applicationSettingsを処理する方法を知りたい場合は、ここ(stackoverflow)で見つけることができます:applicationSettings
にアクセスする方法
AppSettings
使用するかどうかわからない場合は、決定する前にこれapplicationSettings
を読んでください。
警告が発生した場合は'ConfigurationSettings.AppSettings' is obsolete
、このヒントが役立ちます。
.NET Coreフレームワークを使用している場合は、次のリンクを確認してください:.NETCoreのAppSettings