ServiceStack中是否有可能(如果是,如何)在URI中使用带参数的预定义路由? 我可以做其中一个但是两者结合似乎不起作用:
[Route("/hello/{Name}")]
// ok
1. /hello/myname
2. /json/reply/hello
3. /json/reply/hello?Name=myname
// not ok
4. /json/reply/hello/myname
"The operation 'myname' does not exist for this service"
尝试了这些但没有奏效:
[Route("/*/hello/{Name}")]
[Route("/{*}/hello/{Name}")]
特别是,为什么3有效,但不是4? 谢谢!
答案 0 :(得分:1)
不,ServiceStack's pre-defined routes 无法自定义,并遵循明确的格式:
/{format}/[reply|oneway]/{servicename}
即。您可以定义自己的自定义路径,但不能更改保留其预定义行为的预定义路线。
要在URL上发送您需要使用queryString的参数,例如:
/json/reply/Hello?name=myname
否则,您可以使用ServiceStack支持的其他方法发送参数,例如序列化的请求主体,FormData,HTTP标头等