Blazor Wasm自定义@开头路由问题:无法匹配@用户名格式路由
解决Blazor Wasm自定义@开头路由的问题
你原来的路由写法@page "/@{Username}"之所以无效,是因为Razor解析器会把@{Username}当成代码表达式处理,而非路由模板的静态组成部分,导致路由规则无法被正确识别。
正确的写法需要转义路由模板里的@,避免Razor的解析干扰,修改后的代码如下:
@page "/@@{Username}" @code { [Parameter] public string Username { get; set; } }
原理很简单:在Razor字符串中,连续两个@会被转义成一个字面量@,最终Blazor会得到正确的路由模板"/@{Username}"。当你访问https://localhost:5000/@michel时,该路由规则会匹配成功,Username参数也会自动被赋值为michel。
内容的提问来源于stack exchange,提问作者jack
相关产品推荐
相关产品推荐

