Правильно ли реализовать мой кеширующий объект в контроллере следующим образом:
public class HomeController : BaseController
{
public static Cache cachingControl = new Cache();
...
И я использую это так:
public ActionResult Home()
{
IndexViewData view = new IndexViewData();
view.UserId = UserId;
if (cachingControl.Get("viewHome") != null) {
view = (IndexViewData)cachingControl.Get("viewHome");
} else {
view.allAdsList = AllAds(5000, 0);
if (Request.QueryString["voirTous"] != null)
view.loadGeneral(true);
else
view.loadGeneral(false);
cachingControl.Insert("viewHome", view);
}
view.adsList = SetupSearch(5, false, 0);
return View(view);
}
Но когда я звоню по этой линии:
if (cachingControl.Get("viewHome") != null) {
Они бросают мне ошибку
*
NullErrorException 1017 *
Но я знаю, что это может быть нулевым, поэтому я поставил это условие на
У вас есть альтернатива или советы для меня, спасибо!
П.С .: Я знаю, что код странный: P, но я должен его поддерживать ...