En Utilisant Le Système.Web.La mise en cache.Cache
Je suis en train d'utiliser le Cache, mais d'obtenir l'erreur ci-dessous. Comment puis-je utiliser correctement le Cache?
protected void Page_Load(object sender, EventArgs e) {
x = System.DateTime.Now.ToString();
if (Cache["ModifiedOn"] == null) { //first time so no key/value in Cache
Cache.Insert("ModifiedOn", x); //inserts the key/value pair "Modified On", x
}
else { //Key/value pair already exists in the cache
x = Cache["ModifiedOn"].ToString();
} }
'Système.Web.La mise en cache.La mémoire Cache est un "type" mais est utilisée comme une "variable"
Cache
est un type. Sûrement, vous devez créer une instance de Cache
quelque part à l'utiliser?Voir ces liens, l'un est à partir de microsoft msdn.microsoft.com/en-us/library/... ce chalaki.com/... Ils ont utilisé la même syntaxe.
S'il vous plaît montrer VOTRE CODE et de ne pas l'exemple que vous avez trouvé en ligne. Ensuite, nous pourrions voir quel est le problème.
OriginalL'auteur Riz | 2011-07-22
Vous devez vous connecter pour publier un commentaire.
System.Web.La mise en cache.Le Cache
: c'est la mise en œuvre de l' .NET de la mise en cache.System.Web.HttpContext.Actuel.Le Cache
: c'est l'instance de mise en œuvre, qui vit dans le domaine d'application.Je pense que vous voulez utiliser la seconde si vous n'êtes pas dans le code-behind d'une page aspx. L'utilisation du Cache si vous êtes dans le code-behind d'une page aspx.
Vous pouvez également utiliser
Page.Cache.Insert
directement a une référence à laSystem.Caching.Cache
par le biais de la page objet. Tous ce stade de le même le cache de l'application qui sont globaux pour tous les utilisateurs.si vous utilisez HttpContext.Actuel.Cache["Rubrique"] = objet, sa ne fonctionne pas?
Je pense que vous n'êtes pas dans la classe de la page (code derrière d'un asp.net page) et c'est pourquoi le Cache ne fonctionne pas directement. Dans le code-behind, vous pouvez utiliser la syntaxe que vous avez mentionné dans les liens ci-dessus.
Oh oui .. belle prise. Je suis prise d'une bibliothèque de classes pour interagir avec le cache. Comment puis-je le faire dans une autre classe?
au lieu d'utiliser "Cache" directement, il suffit d'utiliser "le Système de.Web.HttpContext.Actuel.Le Cache". Vous devrez peut-être ajouter une référence à system.web de l'assemblée en fonction de ce que votre bibliothèque.
OriginalL'auteur coder net
Ont quelque part que la classe des magasins de la HttpContext lorsqu'il est initialisé par de nouvelles, ou avec un
Init()
méthodePuis utilisez le
HttpContext.Current.Cache
Ou: Faire des méthodes pour lire et écrire dans le cache avec un paramètre
currentcache
, et le document que donc, avec des exemples de code où il est appelé avecHttpContext.Current.Cache
OriginalL'auteur pashute