IIS7で実行されているWebアプリケーションがあります。グローバル変数を静的変数を持つクラスに格納しています。このクラスはSessionVariablesと呼ばれ、その中には次のようなものがあります。
public class SessionVariables
{
public static string PreferedColor= "Black";
}
この変数を別のページAccountSettings.aspxで設定しています。ここには、色の名前のドロップダウンがあります。ユーザーが色を選択し、[保存]をクリックすると、実行中のコードになります。
protected void btnSave_click(object sender, EventArgs e)
{
SessionVariables.PreferedColor= ddlColorNames.Text;
}
アプリケーションが5分間アイドル状態になった場合、アイドルタイムアウト(分)が5に設定されたため、アプリケーションプール設定が静的値をクリアしていたため、PreferedColorの静的値は常にデフォルトにリセットされます。IISアプリケーションから0に変更しましたプールと問題が解消されました。アプリケーションプールはもうリサイクルされていません。この設定に副作用があるかどうか知りたいのですが。