2010-12-07 69 views
0

我正在寻找一个缓存过滤器,可以在执行某些操作时将其删除。 假设添加/删除缓存作为控制器上的过滤器

我有索引行动是加载记录和缓存与过滤器一分钟。 只要我打电话索引行动必须被缓存,并没有去分贝。

一旦我在创建操作中创建一条记录,它应该删除缓存从数据库加载记录。

有没有解决方案。 我在Ninject网络示例中找到了一个,如下所示。我正在寻找相同的解决方案。

[Cache(0, 0, 5, 0)] 
public ActionResult Index() 
{ 
    //Code here.... 
} 

[HttpPost] 
[ClearCacheOnSuccess("Index")] 
public ActionResult Create(string confirmButton, CreateViewModel userVm) 
{ 
    //Code here... 
} 

回答

0

根据您的缓存持久化(服务器或客户端),你可以使用RemoveOutputCacheItem方法:

var urlToRemove = Url.Action("Index", "Home"); 
Response.RemoveOutputCacheItem(urlToRemove);