首页 新闻 会员 周边 捐助

razor page 路由怎么怎么实现这种效果 product/detail/{id?}-{persionKey?}-{sex?}-{price?}

0
悬赏园豆:15 [待解决问题]

我的razor page项目路由写成 product/detail/{id?}-{persionKey?}-{sex?}-{price?} 尽然会报错说可选参数必须以“/” 结尾

请问如果实现 product/detail/{id?}-{persionKey?}-{sex?}-{price?} 这种效果,有没有办法重写路由,把 “/” 写成 “-”?

dongfp的主页 dongfp | 初学一级 | 园豆:6
提问于:2023-01-31 23:00
< >
分享
所有回答(2)
0

- 分隔的怎么是可选参数,如果 id 为空,请求路径是 product/detail/-1-true-100?

dudu | 园豆:30783 (高人七级) | 2023-02-01 08:17

可以考虑用正则匹配路由,参考 .NET Core MVC: regex routing with named groups

支持(0) 反对(0) dudu | 园豆:30783 (高人七级) | 2023-02-01 08:37

还可以通过 MapDynamicControllerRoute 解决,详见 ASP.NET Core 中如何实现动态路由

支持(0) 反对(0) dudu | 园豆:30783 (高人七级) | 2023-02-01 09:44
0

可以通过IParsable
参考https://www.cnblogs.com/newbe36524/p/16989668.html

路由写成 product/detail/{xxx}

class XXXClass: IParsable<XXXClass>
id,
persionKey,
sex,
price
复制粘贴机器人 | 园豆:720 (小虾三级) | 2023-02-01 11:01

我用的 .net6 razor page ,IParsable接口是 .net7新加的

支持(0) 反对(0) dongfp | 园豆:6 (初学一级) | 2023-02-01 11:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册