У меня очень интенсивная работа с данными в моем приложении MVC3.Чтобы получить прирост производительности, я кэшировал результат следующим образом:
[OutputCache(Duration=60,VaryByParam="none")]
public ActionResult Index(string server, string database)
{ //get+display a list of objects
}
Это хорошо работает.Но я хочу очистить кеш, если определенные действия происходят как Edit
или Create
.Чтобы очистить кеш, я делаю это
var urlToRemove = Url.Action("HtmlOutputMethod", "Controller");
Response.RemoveOutputCacheItem(urlToRemove);
Следующее: Как программно очистить кэш вывода для метода действия контроллера
НО при попыткекэшировать действие на сервере, чтобы удаление кэша действительно работало следующим образом:
[OutputCache(Location="Server", Duration=60,VaryByParam="none")]
public ActionResult Index(string server, string database)
Я получаю эту ошибку:
Невозможно неявно преобразовать тип 'string' в 'System.Web.UI.OutputCacheLocation '
Является ли это устаревшим в MVC3 или мне не хватает сборки?Я вижу, что это используется повсеместно, но на моей машине это не скомпилируется.