как сделать недействительными кэшированные объекты - PullRequest
0 голосов
/ 20 мая 2019

Я использую EFCache (https://github.com/moozzyk/EFCache) для кэширования в памяти объектов на уровне данных. Однако у меня есть кэширование на других уровнях моего приложения (например, на бизнес-уровне, которые могут выполнять некоторую сложную логику дляполучить свойство кэшированной сущности, которое я также хотел бы кэшировать), которое я хотел бы сделать недействительным при обновлении рассматриваемых сущностей в БД. Я не могу найти способ подключиться к механизму аннулирования EFCacheЛюбая идея, как я могу сделать это или, возможно, другую библиотеку, которая лучше для этого? Ниже приведен простой пример:

MyEntity - это объект в базе данных, который имеет свойство Name. Когда я запрашиваю этоEFCache автоматически кэширует его в памяти. Когда свойство Name кэшируемой сущности обновляется в Db, EFCache автоматически делает недействительной эту кэшированную сущность.

Теперь в моей бизнес-логике MyEntity имеет свойство, называемоеCalculatedProperty, который немного интенсивно обрабатывает, который я хотел бы также кэшировать. Кэш свойств должен быть недействительнымd когда MyEntity кэш на уровне данных недействителен EFCache.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...