我试试这个代码
public ActionResult RemoveCache(Guid product_Id)
{
var url = Url.Action("ProductPreview", "Common", new { product_Id = product_Id });
HttpResponse.RemoveOutputCacheItem(url);
return RedirectToAction("Index");
}
除去对孩子行为的输出缓存,但它不工作。 请帮帮我,谢谢!
:在使用MVCDonutCaching NuGet包http://mvcdonutcaching.codeplex.com/
请参阅标题为“使用”的部分: http://www.devtrends.co.uk/blog/donut-output-caching-in-asp.net-mvc-3
从缓存中删除项目。 有一个PARAM Html.Action重载您添加到强制甜甜圈洞(从而排除缓存)
@Html.Action("Login", "Account", true)
上面的真正意思是“不缓存这个孩子动作 - 创建一个甜甜圈洞”
如果被接受,以清除输出缓存ALL享有一定的行动,这里是一个办法:
OutputCacheAttribute.ChildActionCache = new MemoryCache("NewRandomStringNameToClearTheCache");
NewRandomStringNameToClearTheCache
应该是一个随机字符串。
资料来源参考文献: http://dotnet.dzone.com/articles/programmatically-clearing-0