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

C# Blazor 如何在URL中指定字符串参数并绑定到页面属性?

Blazor URL参数传递实现方案

你现有代码存在两处问题:

  • 渲染用的<p>标签属于页面UI内容,不能放在@code代码块内部
  • 没有声明带参数的路由模板,Blazor无法将URL路径中的值和你定义的参数做绑定

正确实现步骤

  1. 首先在页面顶部添加带参数的路由声明,参数部分用大括号包裹,参数名要和你后续定义的Parameter属性名完全一致:
// 必传参数写法
@page "/passParameter/{urlParameter}"
// 如果要支持参数可选,加问号后缀即可
@page "/passParameter/{urlParameter?}"
  1. 把UI渲染内容移到@code块外,完整代码示例:
@page "/passParameter/{urlParameter}"

<p>@urlParameter</p>

@code {
    [Parameter] public string urlParameter { get; set; }
}

以上代码部署后,访问https://localhost:5001/passParameter/thisIsAString 页面就会正常显示thisIsAString。

如果需要传递数值类型的参数,还可以在路由模板中指定参数类型做校验:

// 仅当路径参数为整数时才会匹配该路由
@page "/passParameter/{id:int}"

内容的提问来源于stack exchange,提问作者Ronakße

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 01:24:01