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 :

Le UpdateUser qui trouve pas l'utilisateur


Sujet :

ASP.NET

  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 Le UpdateUser qui trouve pas l'utilisateur
    Alors maintenant que j'ai réussi à capter mon utilisateur courant je voudrais le modifier. Mon exemple est jsute de l'approuver aprés sa procédure d'inscription, mais visiblement, ça marche pas avec n'importe quelle modification.

    Voici le code que j'ai mis dérrière un bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            Dim userId As New Guid(Request.QueryString("userID"))
            Dim u As MembershipUser = Membership.GetUser(userId)
            u.IsApproved = True
            Membership.UpdateUser(u)
    Lorsque je passe par le déboggeur il me dit que le u est bien chargé et vu les valeurs dans les propriétés je constate que c'est le bon utilisateur.
    Mais arrivé sur la ligne de l'Update il me dit ça :
    Impossible de trouver l'utilisateur.
    Donc, là, je sèche et je comprends pas comment un truc pareil est possible.

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ton userID, il ressemble à quoi ? Et pourquoi tu passes par un Guid ?

  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
    Mon userId ressemble à ça : 20174440-efb5-4c81-9449-c0999b0636b3
    ça passe par un GUID parce que le MemberShip gère tout avec des GUID

    J'ai bien vérifié le UserId qu'il me remonte et il est bon.

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Bizarre... je vois pas trop ce qui peut déconner
    Ca ressemble à un bug... tu devrais poster ça sur les forums MSDN, histoire que des gens de MS se penchent sur la question.
    Au fait, tu utilises un MemberShipProvider standard, ou tu t'en es fait un "custom" ?

  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
    J'en ai même fait trois dans mon Web.config

    En fait je balance le nom du provider en piochant dans la BDD. Avec mon système multisite en un seul, je gère quasiment tout dans la base de donnée. Donc j'ai fait plusuer Provider pour avoir des notion de sécurité différentes (question de sécurité ou pas, reset du password ou pas, ....) et lorsque je configure une site, je choisi le provider qui m'interrèsse.

    sinon, je vais tenter d'aller sur le forum MSDN, mais la dernière que j'ai essayé, je me suis paumé.

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ben si c'est un provider à toi, tu dois pouvoir le déboguer pas à pas, non ? tu mets un point d'arrêt dans ta méthode UpdateUser et tu regardes où ça coince

  7. #7
    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
    Déjà fait. Regarde mon premier message, je dis qu'en passant par le débogueur tout parait normal.

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par zooffy Voir le message
    Déjà fait. Regarde mon premier message, je dis qu'en passant par le débogueur tout parait normal.
    Non, ce n'est pas ça que je veux dire. Toi tu as débogué au niveau de l'appel à Membership.UpdateUser (méthode statique qui appelle la méthode UpdateUser du provider effectif). Ce que je veux dire c'est qu'il faut mettre un breakpoint dans le code de ton provider à toi. C'est sûrement là qu'il y a un problème

  9. #9
    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
    Mais, je peux pas mettre un BReakPoint dans mon code du Provider, c'est une suite de paramettres dans le web.config. Voici l'extrait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <membership defaultProvider="MemberShipBase">
    			<providers>
    				<add connectionStringName="DataDev" minRequiredPasswordLength="4" minRequiredNonalphanumericCharacters="0" enablePasswordRetrieval="true" enablePasswordReset="false" requiresQuestionAndAnswer="false" passwordFormat="Clear" requiresUniqueEmail="true" name="MemberShipBase" type="System.Web.Security.SqlMembershipProvider"/>
    				<add connectionStringName="DataDev" minRequiredPasswordLength="4" minRequiredNonalphanumericCharacters="0" enablePasswordRetrieval="true" enablePasswordReset="false" requiresQuestionAndAnswer="true" passwordFormat="Clear" requiresUniqueEmail="true" name="MemberShipQuestion" type="System.Web.Security.SqlMembershipProvider"/>
    				<add connectionStringName="DataDev" minRequiredPasswordLength="4" minRequiredNonalphanumericCharacters="0" enablePasswordRetrieval="true" enablePasswordReset="false" requiresQuestionAndAnswer="false" passwordFormat="Clear" requiresUniqueEmail="true" name="MemberShipDieu" type="System.Web.Security.SqlMembershipProvider"/>
    			</providers>
    		</membership>
    Ce qui est bizarre c'est que les Provider fonctionnent tous pour tous ce que j'ai déjà avec dans le MemberShip.

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ah ok, on s'est mal compris... quand je te demandais tu utilises un MemberShipProvider standard, ou tu t'en es fait un "custom" ?, ça voulait dire est-ce que tu as implémenté ton propre MemberShipProvider

    Mais en fait tu n'utilises que des SqlMembershipProvider, donc le problème n'est pas là, et c'est nettement plus inquiétant

  11. #11
    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
    Bon, j'ai posté la même demande sur le forum de la MSDN et j'ai eu une réponse
    Peut être idiot mais à quoi est égal "Guid(Request.QueryString("userID"))" ?

    T'a vérifié que le résultat se trouve dans la bdd ?
    Donc je suis tombé sur un gars de bonne volonté mais qui n'a pas l'air de bien maitriser le MemberShip. A côté de ça, mon topic à été vue 30 fois. Ceci me fais trés peur car cela voudrait dire que personne ne trouve de solution à ce souci.

    J'aimerais pouvoir écarter au moins un détail : problème de configuration sur ma plate forme. Pour cela il faudrait que l'un d'entre vous monte vite fait une page et le MemberShip et tente a même chose que moi, c'est à dire :
    - une page avec un CreateWizrad User qui n'approuve pas l'utilisateur à la création
    - une autre page qui va utiliser le code que j'ai mis pour Approuver l'utilisateur

    Comme ça, si ça marche, je sais que le souci vient de chez moi, sinon, c'est que c'est un bug global.

    Merci pour votre aide.

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/02/2015, 15h51
  2. Réponses: 5
    Dernier message: 27/04/2010, 17h24
  3. Réponses: 1
    Dernier message: 24/10/2006, 15h59
  4. [FEDORA] Makefile qui trouve pas le bon path
    Par pierabobl dans le forum RedHat / CentOS / Fedora
    Réponses: 8
    Dernier message: 10/08/2006, 11h55
  5. Une DLL qui existe mais VB ne la trouve pas...
    Par Lawari dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 09/12/2005, 23h16

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