ASP.NET Core - 像 MVC 一样的脚手架标识

Exp*_*ove 15 razor asp.net-identity asp.net-core-mvc asp.net-core

我创建了一个带有个人用户帐户身份验证的 Web 应用程序 MVC 项目。

之后我创建了一个自定义的 UserIdentity。我正在尝试更改身份的默认“注册”视图,添加我的新字段,但是我只能将新页面搭建为 Razor 页面。

我的问题是:是否有可能在像 MVC 这样的结构中搭建这些新视图?我根本不想将 MVC 与 Razor Pages 混合使用。

如果这是不可能的,有没有办法创建一个覆盖默认行为的控制器(例如身份/帐户/注册)?

Exp*_*ove 9

对于任何想要在 MVC 上“搭建”身份的人,我推荐以下方法:

到官方身份 ASP.net Github Repository ( https://github.com/aspnet/Identity ) 下载。打开解决方案并搜索 IdentitySample.Mvc 项目。将必要的文件复制到您的项目中。

重要提示:不要忘记更改添加文件的命名空间,因为它们属于不同的项目。


Chr*_*att 8

不,这是不可能的。Identity 团队决定将默认 UI 切换到 Razor Pages,现在就是这样。如果您愿意,您可以手动创建控制器和视图,从脚手架 Razor 页面引用代码以在 MVC 中创建相同的内容,但这取决于您。没有自动方法可以这样做。

  • 这正是我现在正在做的事情,正如 PM 所说,如果我们到处都有 MVC、洋葱架构,并且突然间所有身份信息都在 Razor 页面中,所有逻辑也都在其中,“这会让其他开发人员感到困惑”。公平地说,我明白他的观点,只是看起来和感觉上都很“混乱” (2认同)
  • (如果是这样的话)项目的其余部分遵循一些严格的设计模式,身份或任何其他基于 Razor 的部分“脱颖而出”,您是否不会感到困扰?我真的很好奇,因为我非常疯狂地试图遵循某种模式,而 Microsoft 却给它带来了麻烦:) 我的核心项目根本不应该依赖于 ASP,但它现在必须依赖,因为 ApplicationUser 必须扩展 IdentityUser 和因此需要依赖性。我应该不关心并继续吗? (2认同)