2009-04-16 5 views
2

Je conserve la trace de l'ID utilisateur actuellement connecté et base le comportement de mon site sur cette valeur. Mon code définit l'ID connecté utilisateur avec cette déclaration:Définition de Page.User.Identity.Name

FormsAuthentication.SetAuthCookie(UserID.ToString(), true); 

, je lis ensuite cette valeur from Page.User.Identity.Name.

Cela fonctionne très bien sur mon bureau, mais sur mon serveur, je l'ai mis à 8 et il revient 20. J'essaie de comprendre ce qui peut définir Page.User.Identity.Name à une valeur et quand cela arrive .

... Merci

Répondre

2

FormsAuthenticationModule poignées Application_OnAuthenticate et affecte le HttpContext.User à un objet prinicipal qui est à son tour utilisé par Page.User.Identity.Name.

Y at-il un problème de décalage horaire sur le serveur et sur votre bureau?

+0

Que je sais. Le problème est que Page.User.Identity.Name change sa valeur dans mon code et je ne sais pas pourquoi. À un moment donné, il a la valeur 8 (correct), mais quand je charge une autre page, la valeur est passée à 20. Qu'est-ce qui peut provoquer cela? –

+0

Comment le testez-vous? Êtes-vous sûr que la page n'est pas mise en cache? –

+0

Je teste avec une série d'instructions de trace dans le code qui affiche la valeur actuelle de Page.User.Identity.Name. Les instructions de trace proviennent de diverses parties du code. Les valeurs renvoyées changent en fonction de l'endroit où le code est exécuté par l'instruction trace. –