2009-12-13 2 views
1

J'essaie de comprendre exactement quand l'événement Profile_MigrateAnonymous se déclenche.Est-ce que des profils anonymes et authentifiés peuvent coexister dans ASP.NET?

Ma meilleure estimation de la traçabilité de mon code est qu'il se déclenche lorsqu'il détecte à la fois un cookie d'appartenance anonyme ET un cookie d'appartenance authentifié. Quelqu'un peut-il confirmer cela? Je cherche une réponse réelle en profondeur ici. Non seulement il est appelé «lorsqu'un utilisateur se connecte».

Maintenant, pourquoi cela m'intéresse? J'essayais de garder le profil anonyme traîner après qu'un utilisateur s'était authentifié afin qu'une fois déconnecté je serais toujours capable de dire qui ils étaient, et certains paramètres qui ont pu être définis.

Le problème que je vois est que Profile_MigrateAnonymous est déclenché sur chaque requête. Pas seulement quand un utilisateur s'est connecté. Cela me fait croire que c'est une mauvaise pratique de garder le cookie anonyme qui traîne - et que je devrais toujours appeler ClearAnonymousIdentifier();

Par exemple, j'ai un nouveau magasin et un ancien magasin. Je veux que les utilisateurs qui ont accès au «nouveau magasin» ne soient jamais remis dans l'ancien magasin. Évidemment - comme avec la plupart des paniers, vous n'avez pas besoin de vous authentifier pour commencer une session. Par conséquent, je pense que le seul moyen est d'appeler 'ClearAnonymousIdentifier' comme prévu, mais gardez un cookie secondaire 'UseNewStore' pour suivre le magasin vers lequel ils devraient aller.

est-ce une bonne interprétation. Ou est-ce que je ne devrais pas m'inquiéter que Profile_MigrateAnonymous soit appelé tout le temps?

Répondre

Questions connexes