Entity Framework Cache
Définition
EntityFramework.Cache fournit un cache de second niveau pour Entity Framework 6.1 et plus récent.
- Entity Framework ne prend actuellement pas en charge la mise en cache des résultats de la requête.
- Un exemple de fournisseur de cache EF est disponible pour Entity Framework versions 5 et antérieures, mais en raison de modifications apportées au modèle de fournisseur, cet exemple de fournisseur ne fonctionne pas avec Entity Framework 6 et les versions plus récentes.
Cette bibliothèque comble le vide en permettant la mise en cache des résultats de requête pour Entity Framework 6.1 et les applications plus récentes.
Configuration
Pour utiliser EntityFramework.Cache dans votre application, vous devez d'abord configurer EF à l'aide d'une configuration basée sur un code.
public class Configuration : DbConfiguration
{
public Configuration()
{
var transactionHandler = new CacheTransactionHandler(new InMemoryCache());
AddInterceptor(transactionHandler);
var cachingPolicy = new CachingPolicy();
Loaded +=
(sender, args) => args.ReplaceService<DbProviderServices>(
(s, _) => new CachingProviderServices(s, transactionHandler,
cachingPolicy));
}
}
Dans la dernière version, vous pouvez également utiliser la nouvelle méthode statique EntityFrameworkCache.Initialize () pour configurer EF afin qu'il utilise EFCache. La méthode Initialize doit être invoquée avant que EF ne soit utilisé.
Par exemple, pour initialiser EFCache avec InMemoryCache intégré, vous pouvez utiliser le code suivant:
EntityFrameworkCache.Initialize(new InMemoryCache());
Exigences
Version du framework d'entité
- Entity Framework 6.1 ou version ultérieure.