如何将.NET 9 Blazor Web App UI设置为使用静态端口?
解决.NET 9 Blazor Web App开发模式下UI端口固定问题
你遇到的问题源于.NET 9 Blazor Web App的宿主项目(AppHost)+ UI项目分离结构:你修改的是AppHost的launchSettings.json,但UI项目在开发模式下有独立的端口配置逻辑,因此需要单独配置UI项目的端口。
解决步骤
方法1:通过Visual Studio图形界面配置
- 在解决方案资源管理器中找到UI项目(通常命名为
[你的项目名].Client或[你的项目名].UI) - 右键点击该项目 → 选择属性
- 切换到调试标签页
- 在应用程序URL栏输入固定端口(例如
https://localhost:59300) - 保存设置后重启项目即可
方法2:手动修改UI项目的launchSettings.json
- 找到UI项目的
Properties文件夹,若没有launchSettings.json则新建一个 - 写入以下配置内容(替换为你需要的静态端口):
{ "$schema": "https://json.schemastore.org/launchsettings.json", "profiles": { "https": { "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, "applicationUrl": "https://localhost:59300", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } } } }
- 保存文件后重启开发环境,UI项目将使用指定的静态端口
补充说明
- AppHost项目的
launchSettings.json仅控制宿主服务的端口,不会影响UI项目的端口配置 - 这不是Kestrel的问题,是Blazor Web App项目结构的正常行为,无需修改Kestrel相关配置
内容的提问来源于stack exchange,提问作者Robert Achmann




