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 MVC Discussion :

Migration de System.Web.Security à Microsoft.AspNet.Identity [Débutant]


Sujet :

ASP.NET MVC

  1. #1
    Membre habitué Avatar de Nadinette
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2012
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 264
    Points : 144
    Points
    144
    Par défaut Migration de System.Web.Security à Microsoft.AspNet.Identity
    Coucou,

    Je suis en train de faire migrer une application de MVC4 vers MVC5.
    Dans l'ancienne appli, j'utilisais un peu partout la classe MembershipUser du System.Web.Security.
    Lorsque je la cherche dans les références, je ne la trouve plus.

    Pourriez-vous m'aider ?

    Merci

  2. #2
    Membre habitué Avatar de Nadinette
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2012
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 264
    Points : 144
    Points
    144
    Par défaut
    J'ai changé le titre de la discussion car j'ai finalement trouvé le nouveau module : Microsoft.AspNet.Identity

    J'ai créé un projet ASP.net MVC 5 et je vois qu'il y a un ApplicationSignInManager

    Je vois qu'il y a :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
        var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
        var result = await UserManager.CreateAsync(user, model.Password);
    Ce qui me fait me poser les questions suivantes :
    mais où est stocké le compte puisque pour le moment, je n'ai pas encore de base de données ?
    Ce truc peut-il fonctionner sur un serveur qui n'a pas accès à Internet ?

    Merci pour votre aide.

  3. #3
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    ASP.NET Identity et Membership n'ont rien en commun, le premier étant le successeur du second. Le Membership était basé sur une gestion très simpliste basée sur les rôles. Ca convenait très bien pour les applications de l'époque, car les problématiques d'identification étaient très différentes à l'époque du Framework 1 et 2. Avec le Framework 3 on a commencé à voir apparaitre des scénarios bien plus complexes, et on est passé de l'utilisation des rôles à l'utilisation des claims.

    Donc tu fais bien d'utiliser ASP.NET Identity, mais il vaut mieux comprendre un minimum de quoi il retourne pour être à l'aise avec.

    Pour répondre à ta question, par défaut ASP.NET Identity va stocker les infos dans une base de données type SQL Express / Local DB. Tu dois pouvoir trouver la chaîne de connexion dans le web.config. Tu peux la changer pour pointer vers ta propre base de données soit en redéfinissant la connection string utilisée par la factory par défaut d'Entity Framework :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <entityFramework>
      <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
        <parameters>
          <parameter value="Data Source=(localdb)\v11.0; Integrated Security=True; MultipleActiveResultSets=True" />
        </parameters>
      </defaultConnectionFactory>
    </entityFramework>
    Soit en passant le nom de la connection string dans le constructeur du contexte de base de données :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    new ApplicationDbContext(NomDeTaConnectionString);

    Pour voir comment créer les tables nécessaires, tu peux jeter un oeil à cet article : Create an ASP.NET MVC app with auth and SQL DB and deploy to Azure App Service, et il y a pas mal de lecture ici : ASP.NET Identity.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  4. #4
    Membre habitué Avatar de Nadinette
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2012
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 264
    Points : 144
    Points
    144
    Par défaut
    Bonjour,

    Merci pour ta réponse. J'avais bien trouvé la chaine de connexion mais je n'arrive pas à m'y connecter avec SQL Server 2014 Management Studio ou avec Visual Studio pour analyser sa structure.
    Il doit y avoir un truc qui m'échappe.

    Ca m'aiderai bien si je pouvais m'y connecter pour apprendre.

    Mercixxx

  5. #5
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Une fois que tu as ouvert ta solution dans Visual Studio, tu peux accéder à la base locale via l'onglet "Server Explorer". Si tu ne le vois pas (l'onglet) tu peux y accéder via CTRL + ALT + S.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  6. #6
    Membre habitué Avatar de Nadinette
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2012
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 264
    Points : 144
    Points
    144
    Par défaut
    Les data connections sont vides

    J'ai bien essayé d'ajouter une connection (LocalDb)\MSSQLLocalDB mais je ne vois que la base master.dbo
    |DataDirectory|\aspnet-StandardMVC5Project-20160302043025.mdf;Initial Catalog=aspnet-StandardMVC5Project-20160302043025;Integrated Security=True

    Saurais tu me dire où est DataDirectory ?

    Merci

  7. #7
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Normalement c'est le dossier App_Data de ton projet.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  8. #8
    Membre habitué Avatar de Nadinette
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2012
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 264
    Points : 144
    Points
    144
    Par défaut
    Salut,

    C'est le premier endroit où j'ai regardé. C'est quand même incroyable ce genre de truc, c'est pareil dans vm ware, il y a une substitution pour trouver le dossier standard et après, pour le trouver sur le disque c'est la galère...

    J'ai googlé toute la matinée, on trouve comment définir le dosser mais on ne trouve pas comment l'obtenir.



    ++

  9. #9
    Membre habitué Avatar de Nadinette
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2012
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Octobre 2012
    Messages : 264
    Points : 144
    Points
    144
    Par défaut
    J'ai finalement trouvé.

    Sous Windows 10 il suffit de taper *.mdf dans cortana ça le localise immédiatement à la racine de ton compte utilisateur C:\User\{login} c'est un peu aberrant mais c'est comme ça.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/07/2008, 04h55
  2. Mais ou est passé le forum Générateurs d'états ?
    Par chtiot dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 1
    Dernier message: 26/03/2007, 08h20
  3. [VS2005] Assistance - mais ou est passé mon code ?
    Par arnolem dans le forum Visual Studio
    Réponses: 2
    Dernier message: 08/07/2006, 18h03
  4. Mais où est passé DirectShow?
    Par J-F dans le forum DirectX
    Réponses: 3
    Dernier message: 18/03/2006, 16h33
  5. [VC++ .NET] mais où est passée SignedXML ???
    Par benoitB dans le forum MFC
    Réponses: 4
    Dernier message: 30/04/2004, 08h14

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