如何以编程方式删除MVC中的缓存

时间:2015-07-16 07:26:32

标签: asp.net asp.net-mvc asp.net-mvc-4 caching

我的项目要求我出于某种原因清除缓存,但我尝试将其谷歌一天并按照指南进行操作,但缓存仍然存在。

有人可以帮我删除MVC ASP.NET中的缓存吗?

这是我的代码情况:

控制器:我用它来缓存用户的_searchcontent

[OutputCache(Duration = 900, Location = System.Web.UI.OutputCacheLocation.Server, VaryByParam = "_searchContent")]
[HttpGet]
public JsonResult searchJS(string _searchContent)
{
  var _userListfiltered = (from m in databaseContext.Table_Accounts
                           where m.userID.Contains(_searchContent)
                           select m);
  return new JsonResult {  
                           Data = _userListfiltered.ToArray() ,
                           JsonRequestBehavior = JsonRequestBehavior.AllowGet
                        };
}

删除缓存功能(在同一个控制器中)

public ActionResult deleteCache()
{
    var path = @Url.Action("searchJS", "Admin", new
    {
        _searchContent = "admin"
    });

    //HttpResponse.RemoveOutputCacheItem(path);
    Response.RemoveOutputCacheItem(path);
    return RedirectToAction("Adminpage","Admin");
}

我尝试搜索admin然后运行deleteCache函数,然后重新输入单词admin,缓存仍然没有被删除,我不知道为什么。

0 个答案:

没有答案