2009-11-05 5 views
0

VS2005, ASP.NET, C#, IIS6problème avec cache asp.net

Bonjour les amis, j'ai une page maître divisée en trois sections à savoir en-tête, les détails, le pied de page.

La section d'en-tête contient un contrôle d'utilisateur Web ayant un conteneur d'onglets AJAX. Nous affichons ou masquons les onglets en fonction des préférences des utilisateurs. Initialement, un seul onglet est actif indiquant que l'utilisateur se connecte. Lorsque l'utilisateur se connecte, les autres onglets sont activés.

J'ai utilisé <% @ OutputCache Duration = "120" VaryByParam = "none"%> dans mon contrôle utilisateur. Lorsque l'utilisateur se connecte, NullReferenceException est généré sur l'une des méthodes de ce contrôle. Lorsque je supprime le OutputCache, tout fonctionne correctement.

Quelqu'un pourrait-il me guider que dois-je faire?

Merci à l'avance

+1

Pouvez-vous publier le code à l'origine de l'erreur? Sinon, il est difficile de savoir quel est le problème. – pmarflee

+0

Son erreur de génération sur l'objet de ce contrôle utilisateur Web. – IrfanRaza

+1

Que fait ce contrôle? Pourquoi pensez-vous que cela a à voir avec la mise en cache? Peut-être pourriez-vous fournir un peu plus de détails/d'exemples sur ce que vous essayez de faire? – Ivo

Répondre

0

La façon « facile » pour résoudre ce problème est de vérifier si la valeur est nulle, si elle est nulle créer elle.

Une meilleure façon serait de découvrir pourquoi il est nul.

Une possibilité est que la première fois que cette page est appelée, il existe un paramètre qui détermine que l'un des contrôles ne doit pas être créé. La deuxième fois, il est appelé avec un paramètre qui dit que le contrôle est requis, mais il utilise une version en cache de la page qui n'a pas ce contrôle.

+0

Mais si je supprime l'instruction OutputCache, cela fonctionne correctement. – IrfanRaza