我正在学习ASP课程。Net MVC,并达到了该课程依赖于Visual Studio在创建项目时选择"个人用户帐户"时自动构建的标准"注册"one_answers"登录"功能的程度。
显然,Visual Studio的新版本现在默认为"无身份验证"。
我已经建造了很多东西,如果要创建一个新项目并将所有东西转移过来,那将是一种痛苦。是否有更简单的方法来更改身份验证类型(并生成相应的页面和控制器)?
(我不想手动添加身份和调整身份验证过程,我希望获得与创建一个设置了"个人用户帐户"的新项目相同的结果-VS创建默认控制器和视图)
在第6步后插入一个遗漏的点。也感谢您的解决方案
找到了解决方案!
-
创建一个相同类型的新虚拟项目,但使用";个人用户帐户";已选择身份验证类型。这将生成您需要的文件。
-
在当前项目上(使用"无身份验证"),使用Package Manager控制台添加以下引用(您还没有的引用):
- 安装程序包EntityFramework
- 安装程序包EntityFramework。SqlServerCompact
- 安装软件包Microsoft。AspNet。身份核心
- 安装软件包Microsoft。AspNet。身份EntityFramework
- 安装软件包Microsoft。AspNet。身份Owin
- 安装软件包Microsoft。AspNet。WebApi。客户
- 安装软件包Microsoft。Owin。主办SystemWeb
- 将以下文件从虚拟项目复制到活动项目(显然,并将它们添加到解决方案中):
- \App_Start\IdentityConfig.cs
- \应用程序启动\启动。Auth.cs
- \Controllers\AccountController.cs
- \Controllers\ManageController.cs
- \模型\AccountViewModels.cs
- \Models\IdentityModels.cs
- \Models\ManageViewModels.cs
- \视图\帐户\(全部内容)
- \视图\管理\(整个内容)
- \视图\共享\登录部分.shtml
- \启动.cs
-
将这些文件添加到解决方案后,根据实时项目更改其名称空间(全部替换)。
-
打开";IdentityModels.cs";并将ConnectionString更改为"0";ApplicationDbContext";匹配您的实时(如Web.config)
-
打开\Views\Shared_Layout.cshtml文件并添加
@Html。部分("_LoginPartial")
7)复制。。。从Dummy项目的Web.config到主项目。(您错过了这一点,这可能会导致无法创建数据库等问题)
- 编译和测试。你应该做好准备
所有信用https://chiroldes.wordpress.com/2015/04/02/agregando-asp-net-identity-a-un-proyecto-mvc-sin-validacion-autenticacion-o-autorizacion-de-usuarios/comment-page-1/#comment-13
您需要在项目中使用nuget安装Identity。这里有一个很好的StackOverflow线程,你可以遵循-
添加ASP。NET MVC5对现有项目的身份验证
C#discord社区的某个人给了我一个快速的解决方案。
- 在本地计算机上打开命令提示符
- 创建文件夹:";C: \Users\Prson\source\repos\AppName">
- 导航到文件夹:cd"C: \Users\Prson\source\repos\AppName">
- 类型:dotnet new mvc--auth Individual--framework netcoreapp{Type version}
5.资源