如何将登录页面作为ASP .NET Core 2.1中的默认路由?

Zub*_*ana 7 c# asp.net-mvc-routing asp.net-identity razor-pages asp.net-core-2.1

我是ASP .NET Core 2.1的初学者,正在开发使用ASP .NET Core 2.1和个人身份验证的项目.我想将我的登录页面作为我的默认路由而不是Home/Index:

            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");
Run Code Online (Sandbox Code Playgroud)

任何帮助如何将其更改为ASP .NET Core 2.1,因为Login现在用作剃刀页面而不是MVC Action View.

小智 7

我通过在ConfigureServices函数 (Startup.cs) 中使用此代码解决了这个问题

services.AddMvc().AddRazorPagesOptions(options => {
     options.Conventions.AddAreaPageRoute("Identity", "/Account/Login", "/Account/Login");
}).SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
Run Code Online (Sandbox Code Playgroud)


csh*_*rpQ 6

ConfigureServices方法中使用它.

services.AddMvc().AddRazorPagesOptions(options=> {
   options.Conventions.AddAreaPageRoute("Identity", "/Account/Login",""); 
}).SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
Run Code Online (Sandbox Code Playgroud)

然后在Configure方法中

 app.UseMvc(routes =>
        {
            routes.MapRoute(
               name: "default",
               template: "{controller=Home}/{action=Index}/{id?}");

        });
Run Code Online (Sandbox Code Playgroud)