如何在Blazor WASM托管应用中使用dotnet watch?
Blazor WASM托管模式dotnet watch异常解决方案
问题1:客户端项目执行dotnet watch应用无法运行
托管模式的Blazor WASM客户端本身不包含服务宿主、后端接口等运行依赖,需要服务端项目提供运行支撑,直接在客户端项目执行dotnet watch不会启动配套后端服务,应用无法完成资源加载和接口调用,自然无法正常运行。
问题2:服务端项目执行dotnet watch无法检测客户端代码变更
默认配置下服务端的dotnet watch仅会监控当前项目内的文件变更,需要手动添加客户端项目的文件监控规则,操作步骤如下:
- 打开服务端项目的
.csproj文件,在<Project>根节点下添加以下配置:
<ItemGroup> <!-- 替换为实际的客户端项目相对路径 --> <Watch Include="..\BlazorWasmClient\**\*.razor" /> <Watch Include="..\BlazorWasmClient\**\*.cs" /> <Watch Include="..\BlazorWasmClient\**\*.css" /> <Watch Include="..\BlazorWasmClient\**\*.js" /> <Watch Include="..\BlazorWasmClient\**\*.html" /> </ItemGroup>
- 保存配置文件后,在服务端项目根目录执行
dotnet watch命令启动即可,后续修改客户端项目的代码、样式、页面文件都会被自动检测,触发热重载或重新编译。 - 如果仍存在检测失效问题,先清理项目缓存后再重试:
dotnet clean dotnet restore
注意:不要同时使用IDE自带的热重载功能和命令行的dotnet watch,二者会出现监控冲突,导致变更检测失效。
内容的提问来源于stack exchange,提问作者Bogdan B
相关产品推荐
相关产品推荐

