【发布时间】:2020-03-03 17:14:14
【问题描述】:
我正在查看一个 .Net Core 3.1 项目,它有一个控制器和一堆页面。我无法导航到任何页面。为了解释我的问题;我已将此方法添加到控制器中:
public async Task<IActionResult> Test()
{
return RedirectToPage("/Error");
}
如果我通过浏览器导航到 Test 方法而不是重定向到错误页面;在看似无限循环的情况下调用测试方法,即多次调用该方法,直到出现“ERR_TOO_MANY_REDIRECTS”页面。我认为这意味着存在路由问题,但我不确定。该项目的结构如下:
Controllers
Models
Pages
Error.cshtml
这是一个 .Net Core 3.1 项目。我以前从未见过一个带有 Pages 文件夹的项目(它通常说是 Views),因此也是这个问题的原因。我花了最后一个小时在谷歌上搜索,但一无所获,因此是这个问题的原因。我正在使用 .Net Core 3.1。
【问题讨论】:
-
您能发布您的错误页面代码吗?我猜那个页面也有重定向。
-
Razor Pages 是 ASP.NET Core 2.0 中引入的一种新型 Web 应用。它没有控制器或视图。在 ASP.NET Core 3 中,它成为 Web 应用程序的默认类型
-
@w0051977 没有解释项目是如何创建或修改的。如果您看到
Pages文件夹,则表示这是一个Razor Pages网络应用程序。它不使用控制器。默认的Error.cshtml也不包含Hello。你在检查别人的项目吗? -
@w0051977 因为您使用的是 .NET Core 3.1,所以只需使用
dotnet new webapp创建一个新的 Web 应用程序并检查文件。 -
@Kavinci,是的,就是这样,即缺少 AddRazorPages(我以前从未使用过 Razor 页面)。如果您想发布答案,那么我会给予一些信任。
标签: c# asp.net-core .net-core