Поиск по шаблону ключа кэша корпоративной библиотеки Microsoft

#caching #search #enterprise-library

#кэширование #Поиск #корпоративная библиотека

Вопрос:

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

 AccountsStaffMark1234
AccountsStaffPeter0123
AccountsStaffHenry1111
ScienceStaffRuth2222
EnglishStaffSimon3333
  

Мне нужно иметь возможность искать все записи кэша accountstaff и удалять их, когда будут доступны новые данные.
Я не могу использовать Flush() ключевое слово, поскольку оно очищает все данные, включая Science и English . Кэшированные данные хранятся в кэширующей базе данных, и я могу создавать запросы по шаблону в CacheData таблице для фильтрации AccountsStaff . В соответствии с этими строками

  1. Есть ли способ поиска ключей в среде корпоративной библиотеки?
  2. Если нет, можно ли расширить библиотеку кэширования для моих требований и как?

Комментарии:

1. Если я должен упростить вопрос, мне нужны Flush() подмножества кэшированных данных.

Ответ №1:

Хорошо, нашел один выход. Cache объект предоставляет хеш-таблицу со всеми хранящимися в ней ключами. Я создам пользовательскую логику вокруг ключей для удаления определенных экземпляров. Итак, в приведенном выше случае выполните поиск всех ключей, начинающихся с AccountsStaff и явно удалите их.