更改 ASP.Net Core 5 中的默认页面
Posted
技术标签:
【中文标题】更改 ASP.Net Core 5 中的默认页面【英文标题】:Changing default page in ASP.Net Core 5 【发布时间】:2021-12-16 23:27:49 【问题描述】:相关主题:
Setting a new landing page in ASP.NET Core MVC
Razor Pages Default Page in aspnetcore 2
以最简单的方式,我创建一个新的 Asp.net razor 页面项目并创建一个名为“Identity”的文件夹和两个 Razor 页面,如下所示:
并像这样更改TaskSelection
页面的路由:
现在我想更改此 Web 项目的第一个登录页面,但我不想:
删除索引页
调用Get
方法时从索引页面重定向
这段代码我写在ConfigureServices
:
services.AddMvc().AddRazorPagesOptions(options =>
options.Conventions.AddPageRoute("/Identity/TaskSelecttion", "/Identity/TaskSelecttion");
);
但它返回到索引页面!!!。
如何将默认登录页面从索引更改为TaskSelection
页面?
谢谢
【问题讨论】:
你测试的网址是什么? 当您执行 options.Conventions.AddPageRoute("/Identity/TaskSelection", "x") 时,localhost:port/x 会将您带到 Identity/TaskSelection.cshtml。您可以像 options.Conventions.AddPageRoute("/Identity/TaskSelection", "") 一样设置它,这样当您输入 localhost:port/ 时,您会得到 Identity/TaskSelection.cshtml 作为默认页面。 @mxmissile 我刚刚运行项目,网址是https://localhost/
【参考方案1】:
我像这样更改了options
:
services.AddMvc().AddRazorPagesOptions(options =>
options.Conventions.AddPageRoute("/Identity/TaskSelection", "");
);
但我收到了这个错误:
AmbiguousMatchException:请求匹配多个端点。火柴: /身份/任务选择 /索引
所以我像这样更改索引页面的路由:
成功了
【讨论】:
以上是关于更改 ASP.Net Core 5 中的默认页面的主要内容,如果未能解决你的问题,请参考以下文章
更改 Angular 和 ASP.NET Core 项目中的默认身份路由
ASP.NET Core 5.0中的Host.CreateDefaultBuilder执行过程