我意识到 asp.net 核心 2.1 身份已经转移,但如果将它们添加为脚手架项目,则可以添加到解决方案中。
它为所有页面添加所有 razor 类库。
但是,我想做的是使用旧的帐户控制器方式,客户端(移动或网络(可以发布到与帐户相关的API。
我有什么选择可以恢复旧方式或类似方式。 这样我就可以使用来自客户端的 API
不幸的是,它不再存在了。我个人对这种变化以及团队无休止地将剃刀页面推向每个人感到非常恼火,坦率地说,这些页面应该留在历史的垃圾箱</rant>
。
就我个人而言,所做的是添加脚手架,然后创建自己的控制器,将 Razor Pages 代码改组并重写为传统的 MVC 样式控制器和视图。虽然这不是一次愉快的经历,但如果你想要这样,我知道没有其他方法。
不过,需要注意的一件事是,AddDefaultIdentity
扩展实际上也添加了默认 UI,就像您将其基架添加到项目中一样。换句话说,即使您将所有内容移动到控制器和视图并删除所有基架内容,Razor Pages 路由仍将优先。更不幸的是,没有好的选择可以添加AddDefaultIdentity
。这是您需要的:
services.AddIdentityCore<ApplicationUser>(o =>
{
// Identity config
})
.AddSignInManager()
.AddDefaultTokenProviders()
.AddEntityFrameworkStores<YourContext>();
services.ConfigureApplicationCookie(o =>
{
o.LoginPath = "/signin";
o.LogoutPath = "/signout";
o.AccessDeniedPath = "/signin";
o.ReturnUrlParameter = "returnUrl";
});
显然,在最后一点中,您将 URL 更改为您自己的应用程序路由。