为什么请求url中的plus(++)字符串没有通过asp.net web api发送到服务器

时间:2016-03-16 10:24:20

标签: asp.net-mvc asp.net-web-api

我有2个申请。 coreproject和clientproject。 我从clinetproject发送一个字符串文本到coreproject。我只有一个问题发送加上(+)chacter到coreproject。例如,我的requset url ecive to coreproject是Request = {Method:GET,RequestUri:' http://localhost:whateever/api/v1/Search/Search?Query=++++++&PageNumber=1&PageSize=5',Version:1.1,Content:System.Web.Http.WebHost.HttpControllerHandler + LazyStreamContent,头: {   接受:application / json   主持人:localhost:...

但我的actionContext.ModelState.IsValid为假
我在clinet项目中的字符串文本是++++++,但它接受了coreproject并改为" "和model.isvalid是假的?为什么呢?

1 个答案:

答案 0 :(得分:3)

在查询部分加号平均空间。如果你想发送加号,你必须用%2b编码。

所以现在你的RequestUri应该是这样的:

http://localhost:whateever/api/v1/Search/Search?Query=%2b%2b%2b%2b%2b%2b&PageNumber=1&PageSize=5',