1

在我们当前的设置中,我们有一个已知的登录路径。但是现在我们使用的是 core 2.2,我无法解决当前的问题;那总是使用 loginPath:/Identity/Account/Login但我们想改变它。

在 StackOverflow 和其他人上阅读了很多,我似乎无法修复它。所以现在我有一个全新的 MVC 应用程序试图找出我做错了什么。

在我的启动中,我有:

public void ConfigureServices(IServiceCollection services)
{
    services.Configure<CookiePolicyOptions>(options =>
    {
        // This lambda determines whether user consent for non-essential cookies is needed for a given request.
        options.CheckConsentNeeded = context => true;
        options.MinimumSameSitePolicy = SameSiteMode.None;
    });

    services.AddDbContext<ApplicationDbContext>(options =>
        options.UseSqlServer(
            Configuration.GetConnectionString("DefaultConnection")));

    services.AddIdentity<IdentityUser, IdentityRole>()
        //                .AddDefaultUI()
        .AddEntityFrameworkStores<ApplicationDbContext>()
        .AddDefaultTokenProviders();

    services.ConfigureApplicationCookie(options =>
    {
        options.LoginPath = new PathString("/Account/Login2");
    });

   services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
}

// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
        app.UseDatabaseErrorPage();
    }
    else
    {
        app.UseExceptionHandler("/Home/Error");
        // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
        app.UseHsts();
    }

    app.UseHttpsRedirection();
    app.UseStaticFiles();
    app.UseCookiePolicy();

    app.UseAuthentication();

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

}

我究竟做错了什么?更好;解决办法是什么 :)

4

1 回答 1

1

事实证明;

我需要搭建一个标识项(如login),并在登录剃须刀页面(login.cshtml)中添加:

@page "~/account/login2"

这可能也是您可以在启动期间使用剃须刀中的路由来修复的:

.AddRazorPagesOptions(options => {...});

还没有尝试过,但那是另一回事..

干杯

于 2019-04-26T13:50:32.817 回答