私はASP.NET MVCアプリケーションにコントローラを持っています。このページには、コントローラ内にDictionaryオブジェクトで表されるいくつかのフィルタがあります。フィルタの辞書には、以下のようになります。ページでASP.NET MVCコントローラのシングルトン辞書?
Dictionary<string,bool> filterMap = new Dictionary<string,bool>();
filterMap.Add("Accepted",true);
filterMap.Add("Rejected",true);
filterMap.Add("Valid",true);
filterMap.Add("Invalid",true);
、「受理」ボタンをオフに切り替えている場合は、辞書項目(すなわちそこに尊敬の値を設定するためのトグルボタンがありますが、それは上の値を変更しますfalseに辞書項目。
私が経験しています私の問題があり、ページが呼び出されるたびに、辞書コンストラクタでリセットされ、上記の値に初期化される。
私は私のコンストラクタで次ましたが、辞書がリセットされ、毎回nullであるために役立ちません。
最も簡単なオプションは、セッション中にFilterMap
を保存することです
public MyController(){
if (FilterMap == null)
{
FilterMap = new Dictionary<string, bool> {{"Accepted", true}, {"Returned",true}, {"Valid", true},{"Invalid",true}};
}
}