asp.net-mvc - ASP.NET MVC : Change from "No Authentication" to "Individual User Accounts" on existing project

标签 asp.net-mvc authentication visual-studio-2017

我正在学习有关 ASP.Net MVC 的类(class),并达到了该类(class)依赖于在创建项目时选择“个人用户帐户”时 Visual Studio 自动构建的标准“注册”和“登录”功能的程度。

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

我已经构建了很多东西,创建一个新项目并将所有东西都搬过来会很痛苦。是否有更简单的方法来更改身份验证类型(并生成相应的页面和 Controller )?

(我不想添加身份并手动调整身份验证过程,我希望获得与创建具有“个人用户帐户”设置的新项目相同的结果 - VS 创建默认 Controller 和 View )

最佳答案

插入了在第 6 步后遗漏的点。也感谢您的解决方案!
找到了解决办法!

  • 创建一个新的相同类型的虚拟项目,但选择了“个人用户帐户”身份验证类型。这将生成您需要的文件。
  • 在当前项目上(使用“无身份验证”),使用包管理器控制台添加以下引用(您还没有的引用):
  • 安装包 Entity Framework
  • 安装包 EntityFramework.SqlServerCompact
  • 安装包 Microsoft.AspNet.Identity.Core
  • 安装包 Microsoft.AspNet.Identity.EntityFramework
  • 安装包 Microsoft.AspNet.Identity.Owin
  • 安装包 Microsoft.AspNet.WebApi.Client
  • 安装包 Microsoft.Owin.Host.SystemWeb
  • 将以下文件从虚拟项目复制到实时项目(显然,并将它们添加到解决方案中):
  • \App_Start\IdentityConfig.cs
  • \App_Start\Startup.Auth.cs
  • \Controllers\AccountController.cs
  • \Controllers\ManageController.cs
  • \Models\AccountViewModels.cs
  • \Models\IdentityModels.cs
  • \Models\ManageViewModels.cs
  • \Views\Accounts\(整个内容)
  • \Views\Manage\(整个内容)
  • \Views\Shared\_LoginPartial.cshtml
  • \Startup.cs
  • 将这些文件添加到解决方案后,根据实时项目更改它们的命名空间(全部替换)。
  • 打开“IdentityModels.cs”并更改“ApplicationDbContext”中的 ConnectionString 以匹配您的实时连接(如在 Web.config 中)
  • 打开您的\Views\Shared_Layout.cshtml 文件并添加
    @Html.Partial(“_LoginPartial”)

  • 7)将...从虚拟项目的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

    关于asp.net-mvc - ASP.NET MVC : Change from "No Authentication" to "Individual User Accounts" on existing project,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51773602/

    相关文章:

    asp.net-mvc - 关于模型验证,EF4 代码优先与模型优先

    javascript - asp.net mvc 在 javascript 中打开另一个 View

    c# - Visual Studio 2017 无法使用 "Unable to download installation files"脱机安装

    javascript - 为什么 JS 事件 "onclick"在第二次单击后起作用,但不是第一次? ASP.NET框架

    php - 为什么在 Restful 实现中使用 $_SESSION 不好?

    ios - 如何针对 iCloud 验证 iCloud ID token ?

    macos - 为 OSX 编写可插入身份验证模块 (PAM)

    c# - 无法在异常助手中查看抛出的异常详细信息

    c++ - 运行 MFC 应用程序时有没有办法输出到 "console"?

    asp.net-mvc - 使用成员(member)提供程序进行 ASP.NET MVC 4 Web API 身份验证