dotnet core mvc memoryCache.Get возвращает асинхронный ответ?
Я использую.net ядро MVC 2.1. Я пытаюсь использовать метод ImemoryCache Get
Я посмотрел на ответ метода Get и кажется его асинхронным. Он возвращает объект и не позволяет мне также поставить obj.Result.
Когда я вижу документацию Нет, где в образце ответ асинхронный.
Почему я получаю эту проблему?
1 ответ
Потому что данные в памяти Task<List<ApplicationConfigurationKeyPairModel>>
но согласно вашему коду, вы хотите получить его как IList<ApplicationConfigurationKeyPairModel>
без преобразования из значения задачи в нормальное значение.
Так что, если вы хотите получить его без ошибок, вы должны сделать это так:
var allSettings = _memoryCache.TryGetValue(UtilityHelper.APPLICATION_SETTINGS_ALL, out var value);
Тогда вы можете проверить, какой тип value
и преобразовать его в список с помощью value.Result
,