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

Dotnet Discussion :

Problème de membership


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 5
    Par défaut Problème de membership
    Bonjour,

    Je suis confronté à un problème qui me semble étrange.

    J'aimerais utiliser le membership et ses tables générées via regsql.

    Cependant, mon modèle de données possède une table Personne qui est composée de champs que l'on ne retrouve pas dans la table aspnet_Users (Nom, Prenom, et DateNaissance par exemple). Pour faire la relation, la table Personne possède également un champ de type Guid qui correspond au Guid de l'user correspondant dans la table aspnet_Users.

    La page de création d'une personne (et user) comporte un CreateUserWizard composé de plusieurs WizardStep.
    Le premier step consiste à remplir les informations sur la personne, le 2ème celles de l'user et le dernier le(s) rôle(s).

    Lorsque l'user a été automatiquement créé en base par le système du membership, la méthode CreateUserWizard_CreatedUser est appelée et insert une personne avec les informations récupérées et le guid de l'user tout juste créé.
    Par la suite la méthode AssignUserToRoles_Deactivate est appelée lorsque l'internaute a choisit le(s) rôle(s) de l'user. D'une manière générale, elle appelle la méthode Roles.AddUserToRole(String nomUser, String nomRole).

    Je me suis alors rendu compte que cette méthode crée un nouvel user dans la table aspnet_Users et fait le lien avec ce nouvel user dans la table aspnet_UsersInRoles.
    1) Comment cela ce fait-il qu'un nouvel user soit créé ?

    J'ai alors essayé de ne pas utiliser la méthode Roles.AddUserToRole et d'implémenter une méthode personnelle qui fasse simplement l'insertion dans la table aspnet_UsersInRoles pour insérer l'enregistrement {UserId, RoleId} comme cela devrait simplement le faire.

    Cette insertion (association) est bonne mais le lien entre l'user et son rôle (ses rôles) ne semble ne pas être prise en compte par le système du membership notamment dans le loginview mais égalemement dans l'outil d'Administration de site Web (du menu WebSite->ASP .NET Configuration) où l'user n'a aucun rôle de coché.

    2) Comment cela se fait-t'il puisque le lien entre l'user et les rôles ne se fait que dans la table aspnet_UsersInRoles ?

    Enfin lorsque je modifie les rôles de l'user depuis l'outil d'Administration de site Web, un nouvel user est à nouveau créé et le lien est fait avec ce nouvel user dans la table aspnet_UsersInRoles comme décrit plus haut (avec la méthode Roles.AddUserToRole(String nomUser, String nomRole)).
    (Ceci même à partir d'un user intégralement créé via l'outil d'Administration de site Web).


    Qu'en pensez-vous ?



    Cordialement.

  2. #2
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Par défaut
    Pour les champs supplémentaire (Nom, Prenom, et DateNaissance) tu peux utiliser le système de profil qui aussi intégré à ASP.NET et qui fonctionne sur le même modèle.
    Les règles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages privés svp

    Software is never finished, only abandoned.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 5
    Par défaut
    C'est effectivement une alternative pour le stockage des données supplémentaires que je viens d'essayer.

    En revanche ça ne change pas le problème : la méthode Roles.AddUserToRole crée un nouvel utilisateur...

    Je ne comprends vraiment pas pourquoi...

    Ni pourquoi le système du membership ne reconnaît pas les associations que j'insers dans la table UsersInRoles.

Discussions similaires

  1. Problème de membership. Aucun rôle défini.
    Par mappy dans le forum ASP.NET
    Réponses: 0
    Dernier message: 25/06/2012, 13h34
  2. Requete sur Membership problème
    Par piero53 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 12/11/2009, 20h52
  3. Problème: Membership et CreateUserWizard
    Par BlAcKWiNgS027 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 14/07/2009, 22h28
  4. Problème membership IIS
    Par amen_1919 dans le forum ASP.NET
    Réponses: 0
    Dernier message: 09/07/2009, 14h16
  5. probléme Membership createuser
    Par dv-2008 dans le forum ASP.NET
    Réponses: 14
    Dernier message: 29/01/2009, 00h32

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