Blazor Server App:Visual Studio中关闭浏览器能否保持服务运行
Visual Studio 启动Blazor Server时关闭浏览器仍保留服务运行的配置方法
默认调试模式下关闭浏览器就终止服务,是VS的调试绑定逻辑导致的,和Blazor Server本身的运行机制无关,以下是可行的配置方案:
- 关闭自动启动浏览器配置
右键项目节点选择「属性」,切换到「调试」面板,取消勾选启动浏览器选项即可。配置完成后按F5启动调试时,VS不会自动唤起浏览器,你可以手动输入服务地址访问,此时关闭所有访问该服务的浏览器窗口,调试会话、后端服务进程都会持续运行,完全满足观测无客户端连接下TCP连接状态的需求。 - 直接修改启动配置文件
打开项目根目录下Properties/launchSettings.json文件,找到你当前使用的启动配置段,将launchBrowser字段值修改为false,和界面配置效果完全一致,配置参考:
{ "profiles": { "你的Blazor项目名": { "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": false, "applicationUrl": "https://localhost:7084;http://localhost:5084", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } } } }
- 临时无配置方案
如果不想修改永久配置,可以正常按默认配置启动调试,等服务跑起来后,在VS顶部菜单栏选择「调试」→「全部断开」(快捷键Ctrl+Alt+Break),此时VS会解除和服务进程的调试附着,服务会继续在后台运行,你可以直接观测无客户端连接时的运行状态,需要停止服务时手动关闭弹出的Kestrel命令行窗口即可。
补充说明:Blazor Server自身仅在客户端SignalR连接断开后释放对应Circuit线路资源,不会主动终止宿主进程,默认关浏览器就停服务的行为完全是VS调试器检测到浏览器窗口关闭后主动终止调试进程导致的。
内容的提问来源于stack exchange,提问作者qfactor77
相关产品推荐
相关产品推荐

