【问题标题】:How set a identity scaffolding item/page how initial page in asp.net MVC core?如何在 asp.net MVC 核心中设置标识脚手架项/页面如何初始页面?
【发布时间】:2019-12-23 05:54:49
【问题描述】:

我用身份个体创建了一个新的 mvc 核心,然后我覆盖了登录页面:

new scaffolding item => identity => Login 

Startup.cs 有一个默认的“索引”页面:

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

然而,这个登录页面/视图没有文件夹中的控制器文件。例如控制器/AccountController.cs

那么,我如何在项目中设置登录页面和初始页面?

自动生成的实际链接

<a asp-area="Identity" asp-page="/Account/Login">Login</a>

我查看了很多链接,但找不到帮助。 https://stormpath.com/blog/routing-in-asp-net-core https://docs.microsoft.com/pt-br/aspnet/core/mvc/controllers/routing?view=aspnetcore-2.2 https://code-maze.com/routing-asp-net-core-mvc/

这个链接显示了一些东西,但这是最好的方法?批号行:https://stackoverflow.com/a/56772526/4654957

【问题讨论】:

  • 是否要将登录页面设置为默认起始页面?
  • @XueliChen 没错。但是这个页面没有控制器文件。

标签: c# asp.net asp.net-mvc asp.net-core routes


【解决方案1】:

尝试在 ConfigureServices 中设置如下配置:

services.AddMvc()
        .AddRazorPagesOptions(options => {
                options.Conventions.AddAreaPageRoute("Identity", "/Account/Login", "");
        })
        .SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

配置

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

    });

您可以参考:How to make Login page as a default route in ASP .NET Core 2.1?

【讨论】:

  • 不幸的是,我尝试了这个解决方案但没有成功,在同一页面上没有一个答案被标记为正确。但现在我已经解决了。还是谢谢你
【解决方案2】:

终于解决了。添加 AllowAreas 后一切正常。

配置服务

    services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1)
        .AddRazorPagesOptions(options =>
    {
        options.AllowAreas = true; //--working after add this line
        options.Conventions.AddAreaPageRoute("Identity", "/Account/Login", "");
    });

【讨论】:

    【解决方案3】:

    这里是关于如何覆盖 .Net Core 的默认登录过程的官方文档:

    https://docs.microsoft.com/en-us/aspnet/core/security/authentication/scaffold-identity?view=aspnetcore-2.2

    【讨论】:

    • 关于我的问题?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-27
    • 2020-03-16
    • 2019-09-10
    • 2016-02-04
    • 2011-01-18
    • 2013-07-10
    • 1970-01-01
    相关资源
    最近更新 更多