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

Posted

技术标签:

【中文标题】如何在 Mono MVC2 应用程序中清除 OutputCache【英文标题】:How to clear OutputCache in Mono MVC2 application 【发布时间】:2012-10-16 11:37:01 【问题描述】:

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

在 Mono 中,OutputCache 不会被清除。 查看 GitHub 中的源代码表明 AddCacheItemDependency 未在 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】:

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

喜欢:

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

【讨论】:

这需要知道确切的网址。 Url 还可以包含查询字符串参数,这些参数可能会有所不同。如何获取缓存中的所有网址?

以上是关于如何在 Mono MVC2 应用程序中清除 OutputCache的主要内容,如果未能解决你的问题,请参考以下文章

如何在不禁用进一步日志记录的情况下清除 catalina.out?

MVC2 :: 我如何*使用*自定义 IIdentity 类?

Ubuntu 安装 mono

如何在发布时在MVC2中返回JSON结果

mono开发安卓的人多吗

“mono.exe”是啥奇怪的文件,为啥会突然出现在我的电脑上?