我在我的 Asp.net Core Web API 中设置了缓存配置文件,如下所示:
services.AddMvc(options => {
// Cache profile for lookup data will expire every 15 minutes.
options.CacheProfiles.Add("LookupData", new CacheProfile() { Duration = 15 });
});
我已经在我的“lookupsController”顶部使用了这个属性,因为每个方法返回的信息列表不会经常更改(虽然缓存每15分钟自动失效)。
[ResponseCache(CacheProfileName = "LookupData")]
[Produces("application/json")]
[Route("api/Lookups")]
public class LookupsController : Controller
{
...
}
我有另一个管理员控制器,可以让用户在查找控制器列表中添加和删除项目,这不会经常发生,但是当它发生时,我希望通过编程方式强制缓存配置文件重置,并强制后续的web请求获取最新的数据,而不是保留现在过时的缓存数据列表。
如何通过编程实现缓存重置? - 然后我可以将此代码添加到我的管理员控制器方法中,以强制缓存重置。 有人之前做过吗?