Recherche…


Remarques

La mise en cache est le processus de stockage des données quelque part pour les demandes futures. Dans notre cas, nous pouvons éviter les accès indésirables à la base de données pour récupérer les données si nous les mettons en cache. .

System.Runtime.Caching (MemoryCache)

Importez l'espace de noms System.Runtime.Caching (Assurez-vous d'avoir ajouté la DLL System.Runtime.Caching à votre référence de projet).

Créez une instance de la classe MemoryCache.

MemoryCache memCache = MemoryCache.Default;

Ajouter des valeurs à MemoryCache

public IQueryable<tblTag> GettblTags()
        {
            var ca = db.tblTags;
            memCache.Add("tag", ca, DateTimeOffset.UtcNow.AddMinutes(5));
            return db.tblTags;
        }

Ici, «tag» est ma clé et «ca» est mes valeurs et DateTimeOffset.UtcNow.AddMinutes (5) sert à définir le cache pour cinq minutes à partir de maintenant.

Obtenir des valeurs de MemoryCache

var res = memCache.Get("tag");
            if (res != null)
            {
                return res;
            }
            else {
                var ca = db.tblTags;
                memCache.Add("tag", ca, DateTimeOffset.UtcNow.AddMinutes(5));
                return db.tblTags;
            }

Nous allons obtenir les valeurs de cache dans la variable res, rappelez-vous que ces valeurs ne seront là que pour cinq minutes. Vous pouvez toujours changer cela en fonction des besoins. Si la valeur n'est pas nulle, nous allons simplement la renvoyer et faire la manipulation et si elle est nulle, nous irons chercher les données de la base de données et ajouterons la valeur au cache.

Supprimer les valeurs de MemoryCache

            if (memCache.Contains("tag"))
            {
                memCache.Remove("tag");
            }


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow