Как эффективно использовать гибридный кэш ядра ASP.NET с типом ResultC#

Место общения программистов C#
Ответить
Anonymous
 Как эффективно использовать гибридный кэш ядра ASP.NET с типом Result

Сообщение Anonymous »

Предположим, что:
  • вам необходимо выполнить дорогостоящую операцию, которая может завершиться неудачно или успешно.
  • результат операции моделируется с использованием объекта результата Result. Объект результата содержит логическое свойство, которое сообщает, была ли операция успешной, и свойство, содержащее результат операции. Здесь вы можете найти пример такой реализации.
  • вы хотите использовать гибридный кэш для кэширования результата дорогостоящей операции, имея все преимущества, предоставляемые гибридным кэшем (например, защиту от давки в кэше).
  • вы хотите кэшировать результат операции только в том случае, если операция завершилась успешно. Если операция завершилась неудачно, вы хотите пропустить кэширование результата операции, чтобы в следующий раз можно было повторить операцию.
Есть ли простой и элегантный способ сделать это с помощью метода GetOrCreateAsync, предоставляемого Hybrid Cache? Мне кажется, что эти требования непросто сопоставить с семантикой GetOrCreateAsync
Возможное решение — использовать исключение, чтобы сигнализировать гибридному кэшу о том, что не нужно кэшировать результат неудачной операции, как это сделано здесь. Есть ли другое решение этой проблемы?
Кажется, на GitHub есть предложение по API, которое идет в том же направлении.

Подробнее здесь: https://stackoverflow.com/questions/798 ... sultt-type
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»