IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Récupérer le User à partir du CreateUserWizard


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut Récupérer le User à partir du CreateUserWizard
    Salut

    J'ai mis en place un CreateUserWizard. Dans le processus d'inscription, au niveau de l'évènement CreatedUser, je voudrais le basculer à IsApporved = False.

    Donc j'ai mis ce code là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Dim userlog As MembershipUser = Membership.GetUser(CreateUserWizard1.UserName)
            userlog.IsApproved = False
    Mais il me lance un message d'erreur
    La référence d'objet n'est pas définie à une instance d'un objet.
    Et là, je comprends plus trés bien. Est ce que le User est perdu car il n'est pas connecté ?

    Et surtout, comment faire pour le récupérer.

    Mon but final est de faire un formulaire d'inscription sur mon site avec un blocage, un envoi de mail et une confirmation d'inscription.

    Merci pour votre aide.

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Crée le directement en IsApproved = false en utilisant une surcharge de CreateUser: http://msdn.microsoft.com/en-us/library/82xx2e62.aspx

  3. #3
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Donc, en gros, je laisse tomber le contrôle CreateUserWizard et j'en refabrique un à ma sauce.

    L'idée est séduisante, mais un peu frustrante, vu le temps que j'ai passé à programmer un CreateUserWizard paramettrable.

    C'est quand même bizarre qu'on ne puisse pas récupérer le User en cours de création.

    Je vais analyser ça un peu plus en profondeur, mais si y a un autre moyen je préfèrerais.

    Merci pour ton aide.

  4. #4
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Citation Envoyé par zooffy Voir le message
    Donc, en gros, je laisse tomber le contrôle CreateUserWizard et j'en refabrique un à ma sauce.

    L'idée est séduisante, mais un peu frustrante, vu le temps que j'ai passé à programmer un CreateUserWizard paramettrable.

    C'est quand même bizarre qu'on ne puisse pas récupérer le User en cours de création.

    Je vais analyser ça un peu plus en profondeur, mais si y a un autre moyen je préfèrerais.

    Merci pour ton aide.
    Je pense que tu peux utiliser ton wizard. T'as juste à intercepter le clic sur le bouton et faire ton traitement au lieu de celui par défaut.
    Sinon, je pense que ta solution devrait marcher. Doit juste y avoir un ptit bug

  5. #5
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Ben justement, c'est dans le click du bouton que je fais le truc, enfin dans une partie du Click. Le conrôle CreateUserWizard n'a pas de click à proprement parler. En fin de message je mets le code complet de la procédure.

    Par contre, j'ai analysé ton idée de surcharge. C'est vrai que c'est carrément mieux, je vais avoir plus de liberté. Mais j'ai un souci, alors je vais faire ma chieuse blonde : je voudrais les deux.....

    Donc, sur la surcharge, je n'arrive pas à lui déterminer le MemberShipProvider de manière spécifique car j'ai 3 Provider pour l'instant, mais je vais en avoir pas mal d'autre (c'est parce que j'ai plusieurs sites en un seul, donc les règles d'inscription ne sont pas les mêmes).

    Ensuite, pour revenir sur l'interception du click, je vois pas du tout comment je peux faire. Quand on click sur le bouton du contrôle CreateUserWizard on déclenche une sérié d'évènements (voir exemple en fin de message) mais en fait, y a pas vraiment de "Click" comme sur un bouton classique.

    Là j'ai mis le CreatedUser, mais y a aussi un CreatingUser (qui doit intervenir avant) et y a l createUserError (qui doit intervenir lorsqu'il y a une erreur sur la céation du User). Bref, une suite d'évènement qui s'enchainent parmi lesquels j'ai du mal à capter le User lui même.
    Ou alors il y a une déclaration que je dois pas bien faire pour scotcher le User dans un objet que je pourrais manipuler.

    Vois tu mon souci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Protected Sub CreateUserWizard1_CreatedUser(ByVal sender As Object, ByVal e As System.EventArgs) Handles CreateUserWizard1.CreatedUser
            Roles.AddUserToRole(CType(CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("UserName"), TextBox).Text, dt.Rows(0).Item("RoleDefault"))
            Dim cuw As CreateUserWizard = sender
            Dim userlog As MembershipUser = Membership.GetUser(GetNomUser(GetUserGUID().ToString))
            userlog.IsApproved = False
            FormsAuthentication.SignOut()
     
        End Sub

  6. #6
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Déjà, pour enregistrer tes modifs, tu dois faire un MemberShip.UpdateUser(ton_user).

    Ensuite, est-ce que les fonction suivantes te retournent bien le résultat attendu:
    GetUserGUID()
    GetNomUser(GetUserGUID().ToString)
    Membership.GetUser(GetNomUser(GetUserGUID().ToString))

Discussions similaires

  1. récupérer l'user name à partir de l'uid
    Par Hypnocrate dans le forum Administration système
    Réponses: 2
    Dernier message: 02/07/2007, 16h50
  2. Récupérer des floats à partir d'une string
    Par hamster dans le forum SL & STL
    Réponses: 8
    Dernier message: 09/06/2005, 08h10
  3. [JTree] Récupérer le modèle à partir de la sélection
    Par bizerta dans le forum Composants
    Réponses: 7
    Dernier message: 08/06/2005, 13h18
  4. Réponses: 11
    Dernier message: 08/04/2005, 11h20
  5. Réponses: 3
    Dernier message: 24/09/2004, 21h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo