Je suis nouveau dans ASP.NET MVC4. Je crée un modèle de projet MVC4 vide et j'essaie d'y ajouter le fournisseur d'adhésion ASP.NET, mais je ne comprends pas comment le faire. Je cherche dans Google mais toutes les démos utilisent le modèle de projet d’application Internet.
Je sais que cette question n’est pas bonne, mais j’y consacre déjà deux jours.
S'il vous plaît donner un conseil ou un tutoriel à cet effet.
Mettre à jour
Selon les conseils de Nesim Razon, je copie et colle des sections d’authentification de formulaires dans mon projet vide à partir d’une application Web MVC4 (modèle d’application Internet). Mais maintenant, je reçois une exception Pour appeler cette méthode, la propriété "Membership.Provider" doit être une instance de "ExtendedMembershipProvider".
[InitializeSimpleMembership]
public class HomeController : Controller
{
public ActionResult Index()
{
WebSecurity.CreateUserAndAccount("Name", "Password"); // Exception is thrown from there.
return View();
}
}
J'ai également ajouté la directive suivante dans le fichier Web.config:
<add key="enableSimpleMembership" value="true" />
Vous devez ajouter les packages Nuget suivants:
Microsoft.AspNet.WebPages.OAuth
Remarque: Ce paquet installera automatiquement toutes les dépendances requises. Voici une liste détaillée de tous les packages de nuget installés:
Ajouter une référence à
Maintenant, pour le tester, ajoutez ce qui suit dans le fichier web.config (Sous system.web
):
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>
Ajouter la chaîne de connexion suivante
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-UnitTestQueries.UI-20121105001038;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-UnitTestQueries.UI-20121105001038.mdf" providerName="System.Data.SqlClient" />
</connectionStrings>
Et ce que j'ai fait est de copier les contrôleurs, les modèles, les filtres et les vues à partir du modèle Internet et de modifier des éléments tels que l'espace de noms, etc.
C'est le résultat (sans styles)
Avant la connexion
Enregistrement
Connecté
Consultez SimpleMembership, les fournisseurs d'adhésion, les fournisseurs universels et les nouveaux formulaires Web Forms ASP.NET 4.5 et modèles ASP.NET MVC 4 pour obtenir des informations sur les éléments nécessaires pour définir SimpleMembership dans un modèle vide.
Vous pouvez également consulter les très jolis messages de Scott Allen:
Périls de MVC4 AccountController
Créez votre propre système d'adhésion pour ASP.NET MVC - Partie I
et
Créez votre propre système d'adhésion pour ASP.NET MVC - Partie II
Adhésion simple à ASP Applications Web NET MVC 5
https://www.youtube.com/watch?v=BsKcVbsMn6w
La mise en œuvre de l'authentification utilisateur dans un projet une fois qu'il est développé est vraiment difficile. Dans cette vidéo, j'ai montré comment utiliser efficacement la fonctionnalité Microsoft Simple Membership dans les projets dans lesquels vous n'avez pas implémenté l'authentification depuis le début. Grâce à cela, vous pouvez implémenter la fonction d’authentification à n’importe quelle étape du projet.
Si vous souhaitez utiliser des fournisseurs universels par opposition à une adhésion simple incluse dans le modèle Internet MVC 4, vous pouvez créer un nouveau projet MVC 4 à l'aide de Modèle mobile et copier le contrôleur de compte + les vues, ainsi que mettre à jour web.config avec la connexion appropriée et section Forms Auth et vous devriez être prêt à partir.