我有在使用輸出緩存像這樣清除輸出緩存6/ASP.NET 5
<cache vary-by="@Util.SomeID" expires-after="@TimeSpan.FromHours(1)">
<div>some content</div>
</cache>
在我需要的內容的情況下到期之前被更新的部分視圖的HTML片段的緩存,我該如何去處理那個特定片段的緩存(或者整個緩存,如果需要的話)?
我使用ASP.NET 5和MVC 6 ..
謝謝!
我有在使用輸出緩存像這樣清除輸出緩存6/ASP.NET 5
<cache vary-by="@Util.SomeID" expires-after="@TimeSpan.FromHours(1)">
<div>some content</div>
</cache>
在我需要的內容的情況下到期之前被更新的部分視圖的HTML片段的緩存,我該如何去處理那個特定片段的緩存(或者整個緩存,如果需要的話)?
我使用ASP.NET 5和MVC 6 ..
謝謝!
IMemoryCache
接口沒有清除緩存的方法。否則,您可以將IMemoryCache
注入您的控制器或任何您需要的地方並調用該方法。
我建議在aspnet緩存存儲庫上發佈功能請求或使用不同的緩存機制。
我工作的延伸CacheManager是內存或分佈式緩存,然後將具有比建造了更多的功能,很簡單,內存緩存在MVC核心可用...
的ASP。 NET團隊已經確認,目前無法直接清除緩存項目。建議的解決方法是使用「版本」變量作爲vary-by緩存參數的一部分。
這實際上並不會清除現有值,但是會顯示新值。舊價值最終會在到期時被清理。
在https://github.com/aspnet/Mvc/issues/4117#issuecomment-187298466
的可能的複製更多細節[任意的方法來清除/沖洗/刪除的OutputCache?](http://stackoverflow.com/questions/565239/any-way-to-clear-flush-remove -outputcache) – timothyclifford
這不是一個MVC 6/ASP.NET 5解決方案。 –