Является ли хорошей практикой кэшировать объект EF Poco напрямую с помощью MemoryCache? Каковы недостатки, если они есть?Кэширование объектов EF Poco плохо?
, например, я создал класс Poco под названием категории
public partial class Category
{
public int Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
}
затем добавить список категории в объект кэша, который является типом MemoryCache, как показано ниже
protected ObjectCache Cache
{
get
{
return MemoryCache.Default;
}
}
List<Category> data= getCategories();
Cache.Add(new CacheItem(key, data), policy);
Или это предложил использовать другой класс преобразователя между кешем и классом, а не классом Poco?
Почему вы хотите, чтобы ваши объекты POCO были кэшированы? Задержка выполнения linq заставила бы думать о том, что несколько мест хранения для ваших данных довольно неудобны - linq позволяет вам всегда получать ваши данные правильно, когда вам это нужно, в то время как вы кэшируете старые записи и, возможно, имитируете свой DbContext. – DevilSuichiro
Например, данные, которые я хочу кэшировать, как и в моем примере, не часто меняются. Может быть, 1 запись в месяц. Поэтому, если я не хочу обновлять, удалять, а только читать. и я могу обновить кеш даже один раз в неделю. эти данные я считаю постоянными кэшированными данными. – batmaci