Кэширование нескольких вложенных страниц в ASP.NET Core - PullRequest
0 голосов
/ 24 марта 2019

Я пытался понять, как реализовать мою логику для кэширования нескольких страниц для отображения одним методом действия, он отлично работает с начальной страницей, однако, когда я пытаюсь получить последующие страницы, он не извлекает данные из сервер, так как очевидно, что он получает данные из кэша с тем же ключом и не попадает на сервер API бэкэнда до истечения времени истечения. Он отображает одну и ту же страницу независимо от нажатия на разных страницах. Код следует: -

    private readonly IMemoryCache _cache;
    private readonly WebAPIService _service;

    private static readonly string _slugKey = "slug";
    private static readonly TimeSpan _defaultCacheDuration = TimeSpan.FromMinutes(5);

    public CachePolicy(IMemoryCache cache, WebAPIService service)
    {
        _cache = cache;
        _service = service;
    }

   public async Task<DisplayDto> GetPostBySlug(string slug)
    {
        return await _cache.GetOrCreateAsync(_slugKey, async entry =>
        {
            entry.SlidingExpiration = _defaultCacheDuration;
            return await _service.GetPostBySlug(slug);
        });
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...