Я настроил профиль кэша в Startup.cs
как
services.AddMvc(opts =>
{
opts.CacheProfiles.Add("MyCache", new CacheProfile { Duration = 60 * 60 * 24, Location = ResponseCacheLocation.Any, VaryByQueryKeys = new[] { "url", "scene" } });
});
, и на контроллере действия я делаю:
[HttpGet]
[ResponseCache(CacheProfileName = "MyCache")]
public IActionResult Search(string url, string scene)
{
...
if(!found) { return NotFound(); }
return Ok(data);
}
Я хочу кэшировать ответ Ok ... Сейчас, он кэширует все, и я не хочу кэшировать ответ NotFound (я имею в виду, я хочу попробовать еще раз). В случае успеха укажите кэшированные данные.
Как это сделать?