В принципе не сложно написать, но хотелось бы в виде NuGet-пакета. Типа получаете из списка значение по ключу и если его нет, то получаете из базы и сохраняете в этот список. При этом на тот случай, что в базе обновят значение — нужно чтобы список удалял старые элементы из себя, т.е. раз в 10 мин. пусть удаляет.
Здравствуйте, Shmj, Вы писали:
S>В принципе не сложно написать, но хотелось бы в виде NuGet-пакета. Типа получаете из списка значение по ключу и если его нет, то получаете из базы и сохраняете в этот список. При этом на тот случай, что в базе обновят значение — нужно чтобы список удалял старые элементы из себя, т.е. раз в 10 мин. пусть удаляет.
S>Что заюзать?
А чем стандартный MemoryCache не устраивает? https://docs.microsoft.com/en-us/dotnet/api/system.runtime.caching.memorycache?view=dotnet-plat-ext-5.0
Re[2]: Кеш с обновлением по времени - что используете?
Здравствуйте, Shmj, Вы писали:
S>В принципе не сложно написать, но хотелось бы в виде NuGet-пакета. Типа получаете из списка значение по ключу и если его нет, то получаете из базы и сохраняете в этот список. При этом на тот случай, что в базе обновят значение — нужно чтобы список удалял старые элементы из себя, т.е. раз в 10 мин. пусть удаляет.
Мне обычно хватает три словаря и иногда таймер (если нагрузка на память существенна).
Здравствуйте, Shmj, Вы писали:
S>В принципе не сложно написать, но хотелось бы в виде NuGet-пакета. Типа получаете из списка значение по ключу и если его нет, то получаете из базы и сохраняете в этот список. При этом на тот случай, что в базе обновят значение — нужно чтобы список удалял старые элементы из себя, т.е. раз в 10 мин. пусть удаляет.
S>Что заюзать?
Всегда хватало стандартного MemoryCache. Если хочется чего-то вне процесса, можно Redis взять. Если надо синхронизировать с БД автоматически, то тут сильно от БД зависит. Вроде в MS SQL Server можно было кэш привязывать к БД, но реально таким не пользовался.