MVC3 でサイト全体のグローバル変数を作成する最良の方法は何なのか知りたいです。
つまり、複数のリクエスト/ビジター間で共有される変数です。
これが可能であれば、サイトがリサイクルされるとすぐに変数が失われると思います..これを行うことの他の長所または短所はありますか?
もちろん、最善の方法はすべてをデータベースに保存することですが、これは可能性/実験的な質問のようなものです;)
MVC3 でサイト全体のグローバル変数を作成する最良の方法は何なのか知りたいです。
つまり、複数のリクエスト/ビジター間で共有される変数です。
これが可能であれば、サイトがリサイクルされるとすぐに変数が失われると思います..これを行うことの他の長所または短所はありますか?
もちろん、最善の方法はすべてをデータベースに保存することですが、これは可能性/実験的な質問のようなものです;)
データを XML として App_Data フォルダーに保存することを検討しましたか?
シングルトンを作成することもできますが、それは AppDomain ごとに 1 つのインスタンスにすぎません。ヒットせずに 20 分間経過すると、IIS がスピンダウンします。
したがって、他の実際の方法は、ファイルまたはDBのどこかに値を永続化することです。
シングルトン ソリューション
C# のシングルトン パターンを次に示します。
public class MyValues
{
private readonly static MyValues instance = new MyValues();
private MyValues() { }
public static MyValues Instance
{
get { return instance; }
}
public string SomeValue { get; set; }
public int SomeOtherValue { get; set; }
}