私は自分のプロジェクトでMvcDonutCachingを使用しており、デバッグ/テスト中に支援するためにキャッシュをグローバルに無効にする方法を探しています。
ドキュメントでこれを達成する方法の例を見つけることができませんが、プロパティCacheSettingsManager
を公開する を見つけましたが、これは.IsCachingEnabledGlobally
readonly
このCacheSettingsManager
設定を構成できるコンストラクターもありません。この設定を構成する方法はありますか?
うまくいくかもしれない(醜い)別の解決策がありますが、それは絶対的な最後の手段であり、実際には必要ではありません。
public class CustomOutputCache : DonutOutputCacheAttribute
{
public CustomOutputCache()
{
if(ConfigurationManager.AppSettings["UseCache"] == "false")
{
base.NoStore = true;
base.Duration = 0;
}
}
}
そして、これを私のコントローラーアクションで使用します:
[CustomOutputCache]
public ActionResult Homepage()
{
// etc...
}
これを行う正しい方法はありますか?