.NET 6 Core Web App Returns 未找到网页

.NET 6 Core Web App Returns web page not found

我已经搜索了这里和其他地方以找出问题所在,但找不到好的解决方案。我针对 .NET6 创建了一个新的 .NET Core Web App。我在没有身份验证且没有 Docker 支持的情况下创建了项目。我希望新应用程序 运行 开箱即用,带有默认登录页面,但我却收到找不到网页的错误。它没有命中 Razor 页面的 Index OnGet 方法。这是一个简单的应用程序,我只打算 运行 自己使用,所以我不会使用 MVC,只会使用 Razor。有人在 .NET 6 中解决了这个问题吗?这是响应、程序 class 和 launchSettings:

404 Error

Program.cs

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/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.UseRouting();

app.UseAuthorization();

app.MapRazorPages();

app.Run();

启动设置

  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:30529",
      "sslPort": 44345
    }
  },
  "profiles": {
    "FinanceTracker": {
      "commandName": "Project",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
      "applicationUrl": "https://localhost:7137;http://localhost:5137",
      "dotnetRunMessages": true
    },
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}

编辑:新信息...

它一直出错,直到我做了以下操作:

运行 来自控制台的项目 (dotnet 运行) 导航到预期的 url 关 单击 'Start without Debugging' 应用打开 关 它现在允许我 运行 从调试 NET6​​ 的模板发生了一些奇怪的事情

编辑 2:

每次更改代码时,我都必须 运行 dotnet 运行。否则我在启动程序时会遇到同样的错误。

编辑 3:

如果我 运行 从 CLI 构建 dotnet,它将 运行 之后处于调试模式。如果我只是从 VS 重建,它不会。如果我更改代码,我必须 运行 dotnet build before 运行ning in debug mode.

正如下面评论/回答的回复所述,这不是端口问题。我在 VS2019 中用相同的端口在 NET5 中创建了一个镜像项目,它工作正常。从 VS 2022 尝试 NET6 效果不佳。也许我在 VS 2022 中配置错误?

我只在重用端口时看到过这个。有时这是因为我在启动时有其他 .net6 运行 windows 服务,但我忘记了它们通常在端口 80 上启动。

此答案来自微软问答。更新解决了这个问题,但我相信修复也能解决问题:

ZhiLv-MSFT JacaruTech-8119 · 5 天前 无法重现我这边的问题,我正在使用 VS 2022 17.1.0 版本进行 windows 10 开发。

在点击开始调试按钮之前,您是否曾经保存更改并构建项目?尝试先右击项目构建应用,然后点击开始按钮调试项目,这个问题是否消失?

另外,能告诉我们详细的VS版本吗?不确定问题是否与VS有关,但您可以尝试通过Visual Studio安装程序修复VS并检查它。