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 :

Formulaires d'Authentication différents selon les cas - MVC Identity


Sujet :

ASP.NET

  1. #1
    Membre régulier
    Homme Profil pro
    autre
    Inscrit en
    Janvier 2015
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Janvier 2015
    Messages : 193
    Points : 116
    Points
    116
    Par défaut Formulaires d'Authentication différents selon les cas - MVC Identity
    Bonjour,

    Je voudrais qu'un user (anonyme) ait le choix entre plusieurs statuts lors de son inscription.
    Particulier / Acheteur Pro / Vendeur Pro

    Un "Particulier" n'a besoin de saisir que son mail et son mot de passe.
    Des informations supplémentaires sont nécessaires pour l'inscription des autres (Société, Siren, Adresse, etc...)
    Je voudrais donc personnaliser le formulaire d'inscription pour chacun des 3 statuts .

    Le formulaire de départ serait celui de la Connexion. Avec dessous l'inscription, 3 boutons qui dirigeraient chacun vers un formulaire différent selon le statut choisi.

    Les formulaires par défaut (login et inscription) sont ceux générés par Razor.

    Je ne sais pas par où commencer.
    • Créer une vue particulière pour chacun des trois formulaires ?

    • Récrire le formulaire d'inscription par défaut et installer une condition d'affichage des éléments selon le bouton qui est cliqué dans le formulaire Login (choix à récupérer...) ?





    J'ai lu qu'il n'était pas recommandé de modifier les vues générées par Identity (Identity/Pages/Account...), ni d'en ajouter. L'arborescence Identity semble un espace réservé.
    C'est écrit dans "Register.cshtml.cs :
    /// <summary>
    /// This API supports the ASP.NET Core Identity default UI infrastructure and is not intended to be used
    /// directly from your code. This API may change or be removed in future releases.
    /// </summary>
    Je n'arrive pas à trouver la réponse sur le net.
    Je ne dois pourtant pas être le seul à avoir ce problème.

    Merci

  2. #2
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 819
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 819
    Points : 5 638
    Points
    5 638
    Par défaut
    Tu as clairement trois typologies d'utilisateurs ayant sans aucun doutes des droits différents et des problématiques différentes.
    Tu devrais donc logiquement les séparer.
    Pour cela il existe la notion d''Area.
    https://dotnet.developpez.com/actu/1...nault-Romaric/

  3. #3
    Membre régulier
    Homme Profil pro
    autre
    Inscrit en
    Janvier 2015
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Janvier 2015
    Messages : 193
    Points : 116
    Points
    116
    Par défaut
    Merci pour cette info intéressante.
    Elle me sera utile.
    Cependant, lors d'une inscription, tous se verront dirigés vers la même area "Identity".
    Dois-je dupliquer et reproduire l'area "Identity" dans chaque area créée pour chaque type de user ?

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 819
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 819
    Points : 5 638
    Points
    5 638
    Par défaut
    D'accord, j'en conclue que tu as déjà une Area Identity.
    Dans ce cas, je ne comprends pas ta réticence à modifier le formulaire existant.

    Du coup, j'ai relu plus attentivement ton premier post et en particulier cette partie.
    Citation Envoyé par AMP29 Voir le message
    J'ai lu qu'il n'était pas recommandé de modifier les vues générées par Identity (Identity/Pages/Account...), ni d'en ajouter. L'arborescence Identity semble un espace réservé.
    C'est écrit dans "Register.cshtml.cs :
    /// <summary>
    /// This API supports the ASP.NET Core Identity default UI infrastructure and is not intended to be used
    /// directly from your code. This API may change or be removed in future releases.
    /// </summary>
    Et la seule explication que je vois c'est que tu as zappé le "not" dans la phrase.
    Cette phrase explique, au contraire qu'il ne faut pas reproduire ce code tel quel mais faire le tien.

    L'option que j'aurais personnellement choisi dans ton cas est d'introduire des radio et d'afficher certains éléments selon le radio sélectionné.

  5. #5
    Membre régulier
    Homme Profil pro
    autre
    Inscrit en
    Janvier 2015
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Janvier 2015
    Messages : 193
    Points : 116
    Points
    116
    Par défaut
    Ah oui, tu as raison !
    J'avais compris le truc de travers.
    C'est néanmoins ambigu quand ils disent que ce code peut être supprimé dans les prochaines versions.
    On peut comprendre qu'une mise à jour risque de remplacer l'API et faire perdre les modifications apportées dans ces fichiers.
    Merci !

  6. #6
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 819
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 819
    Points : 5 638
    Points
    5 638
    Par défaut
    Si comme je le soupçonne tu utilises un NuGet qui te génères des fichiers avec du code (je pense même, d'après tes posts, reconnaître la structure générée par Microsoft.VisualStudio.Web.CodeGeneration.Design)...
    Alors oui, une mise à jour risque de te générer un autre code.
    Cela n'a rien d'ambigu, c'est le principe même de ces librairies de génération.

Discussions similaires

  1. acteur principal et acteur secondaire à la fois selon les cas
    Par rdtech dans le forum Cas d'utilisation
    Réponses: 1
    Dernier message: 21/01/2017, 16h24
  2. Jointure avec tables différentes selon les cas
    Par ninikkhuet dans le forum Langage SQL
    Réponses: 5
    Dernier message: 23/07/2014, 21h58
  3. Lecture de plusieurs sons wav selon les cas
    Par Ghunter59 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/12/2008, 23h21
  4. [POO] ouverture pdf selon les cas
    Par mussara dans le forum Langage
    Réponses: 2
    Dernier message: 15/06/2006, 01h26
  5. Réponses: 2
    Dernier message: 24/01/2006, 13h43

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