You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blazor Auto渲染模式路由NotFound问题求助(InteractiveServer/Wasm)

问题原因解析

1. 路由控制权的默认分配

.NET 8 Blazor Auto App(混合InteractiveServer+InteractiveWebAssembly模式)默认将路由匹配权交给了WebAssembly客户端。客户端启动时只会扫描自身项目内带[Route]特性的组件,不会主动识别Server项目中的路由组件,所以你在Server项目里加的组件路由自然找不到,返回404。而直接在Client项目加组件时,客户端路由系统能正常发现并匹配,所以运行正常。

2. RenderMode设为null的本质

当你把RenderMode设为null,相当于强制切换到静态渲染/Server端直接处理请求的模式。此时路由匹配由Server端的ASP.NET Core路由系统负责,它会扫描Server项目内的路由组件,自然就能找到你添加的组件并正常渲染。

3. 混合模式的组件路由规则

在Blazor混合模式下,Server项目的组件要能被客户端路由识别,需要满足两个条件之一:

  • 把Server项目的组件引用到Client项目中,让客户端路由扫描时能发现;
  • 在Server端显式配置路由端点,将组件路由映射到对应的Server渲染端点,同时确保客户端路由能正确转发请求到Server。

内容的提问来源于stack exchange,提问作者Hamza Modakir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 14:39:51