如何在Mono MVC2应用程序中清除OutputCache

时间:2012-10-16 11:37:01

标签: c# asp.net-mvc asp.net-mvc-3 mono outputcache

AddCacheItemDependency用于使用下面的代码清除Mono Apache MVC2应用程序中的OutputCache。 这在Clearing Page Cache in ASP.NET

中有所描述

在Mono中,OutputCache未清除。 查看GitHub中的源代码表明AddoMacheItemDependency未在Mono中实现。 如何解决这个问题,以便OutputCache可以清除?

安德鲁斯。

[OutputCache(Duration = 3600, VaryByParam = "none")]
public ActionResult Index()
{
  HttpContext.Current.Response.AddCacheItemDependency("Pages");
  return View();
}

public ActionResult Refresh()
{
HttpRuntime.Cache.Insert( "Pages", DateTime.Now);
}
Global.asax.cs中的

protected void Application_Start()
{
HttpRuntime.Cache.Insert( "Pages", DateTime.Now);
}

1 个答案:

答案 0 :(得分:0)

您是否尝试手动删除输出缓存?

像:

var urls = new List<string> {
                    Url.Action("Index", "ControllerName", new { area = "AreaName" }))
            };
urls.ForEach(HttpResponse.RemoveOutputCacheItem);