ファイルのクリーンアップや編集などを処理するカスタムWindowsサービスを作成しました。このプログラムのOnStartメソッドには、次のものがあります。
timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);
timer.Interval = Convert.ToInt32(System.Configuration.ConfigurationSettings.AppSettings["RunInterval"]) * 60 * 60 * 1000); //yeah, i know its an old method
timer.Enabled = true;
しかし、AppSettings ["RunInterval"]は、次の場合でも、毎回nullを返します。
<appSettings>
<add key="RunInterval" value="8" />
<!-- Lots of other stuff -->
</appSettings>
.exe.config内。なぜこれをしているのですか?設定ファイルはOnStart後までロードされませんか?そのようにはあまり意味がないようです。