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

Blazor客户端如何访问服务端Razor页面?

Blazor客户端访问服务端Razor页面404问题解决方法
  • 修正NavLink的href路径
    服务端页面路由声明为@page "/testpage",客户端NavLink的href需要以斜杠开头,修改为:

    <div class="nav-item px-3">
        <NavLink class="nav-link" href="/testpage" Match="NavLinkMatch.All">
            <span class="bi bi-house-door-fill-nav-menu" aria-hidden="true"></span> Test
        </NavLink>
    </div>
    

    相对路径testpage会被客户端路由解析为当前路径下的子路由,而服务端路由是根路径下的/testpage,必须用绝对路径才能正确匹配。

  • 替换为<a>标签跳转
    Blazor的NavLink主要适配客户端单页路由导航,访问服务端Razor页面时,直接使用原生<a>标签触发整页刷新,让服务端处理路由:

    <div class="nav-item px-3">
        <a class="nav-link" href="/testpage">
            <span class="bi bi-house-door-fill-nav-menu" aria-hidden="true"></span> Test
        </a>
    </div>
    
  • 验证服务端路由配置
    检查服务端项目的Program.cs,确保已正确注册服务端组件路由:

    app.MapRazorComponents<App>()
       .AddInteractiveServerRenderMode();
    

    同时确认Testpage.razor的@page指令无拼写错误,路由格式完全正确。

  • 确认项目结构与命名空间
    确保Testpage.razor的命名空间为ServerProject.Components.Pages,且服务端App.razor中包含<Routes />组件,保证路由系统正常运行。

内容的提问来源于stack exchange,提问作者Flaubert TAGU

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 02:44:53