将double / float通过URL传递给Web Api查询字符串

时间:2013-03-20 16:07:07

标签: asp.net-mvc-4 asp.net-web-api query-string

我有一个Web Api项目,我想通过这个URL调用api控制器:

Http://localhost:3030/GetByCoordinates/[[0,1],[1,1],[1,0],[0,0]]

它工作正常,但是当我尝试添加一个双号(比如1.1而不是1)时,浏览器会抛出404找不到异常,因为点使它看起来像另一个地址。

我如何处理双打?

2 个答案:

答案 0 :(得分:3)

尝试添加' /'在URL的末尾,例如

Http://localhost:3030/GetByCoordinates/[[0,1],[1,1.1],[1,0],[0,0]]/

参考:Why is my Web API method with double args not getting called?

答案 1 :(得分:0)

这不是严格意义上的查询字符串,但除非您可以配置MVC项目(或更具体地说,可能是IIS)以允许/管理某些映射(或来管理它们,或许某个特定案例)然后你应该能够将角色从一种形式翻译成另一种形式。

也就是说,您可以将期间换成%2E,然后在服务器端交换它们。