ASP.Net MVC:现有项目从"No Authentication"更改为"Individual User Accounts"



我正在学习ASP课程。Net MVC,并达到了该课程依赖于Visual Studio在创建项目时选择"个人用户帐户"时自动构建的标准"注册"one_answers"登录"功能的程度。

显然,Visual Studio的新版本现在默认为"无身份验证"。

我已经建造了很多东西,如果要创建一个新项目并将所有东西转移过来,那将是一种痛苦。是否有更简单的方法来更改身份验证类型(并生成相应的页面和控制器)?

(我不想手动添加身份和调整身份验证过程,我希望获得与创建一个设置了"个人用户帐户"的新项目相同的结果-VS创建默认控制器和视图)

在第6步后插入一个遗漏的点。也感谢您的解决方案

找到了解决方案!

  1. 创建一个相同类型的新虚拟项目,但使用";个人用户帐户";已选择身份验证类型。这将生成您需要的文件。

  2. 在当前项目上(使用"无身份验证"),使用Package Manager控制台添加以下引用(您还没有的引用):

  • 安装程序包EntityFramework
  • 安装程序包EntityFramework。SqlServerCompact
  • 安装软件包Microsoft。AspNet。身份核心
  • 安装软件包Microsoft。AspNet。身份EntityFramework
  • 安装软件包Microsoft。AspNet。身份Owin
  • 安装软件包Microsoft。AspNet。WebApi。客户
  • 安装软件包Microsoft。Owin。主办SystemWeb
  1. 将以下文件从虚拟项目复制到活动项目(显然,并将它们添加到解决方案中):
  • \App_Start\IdentityConfig.cs
  • \应用程序启动\启动。Auth.cs
  • \Controllers\AccountController.cs
  • \Controllers\ManageController.cs
  • \模型\AccountViewModels.cs
  • \Models\IdentityModels.cs
  • \Models\ManageViewModels.cs
  • \视图\帐户\(全部内容)
  • \视图\管理\(整个内容)
  • \视图\共享\登录部分.shtml
  • \启动.cs
  1. 将这些文件添加到解决方案后,根据实时项目更改其名称空间(全部替换)。

  2. 打开";IdentityModels.cs";并将ConnectionString更改为"0";ApplicationDbContext";匹配您的实时(如Web.config)

  3. 打开\Views\Shared_Layout.cshtml文件并添加

    @Html。部分("_LoginPartial")

7)复制。。。从Dummy项目的Web.config到主项目。(您错过了这一点,这可能会导致无法创建数据库等问题)

  1. 编译和测试。你应该做好准备

所有信用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社区的某个人给了我一个快速的解决方案。

  1. 在本地计算机上打开命令提示符
  2. 创建文件夹:";C: \Users\Prson\source\repos\AppName">
  3. 导航到文件夹:cd"C: \Users\Prson\source\repos\AppName">
  4. 类型:dotnet new mvc--auth Individual--framework netcoreapp{Type version}

5.资源

最新更新