当" $"时,Odata端点返回404错误请求在过滤器中编码

时间:2015-06-18 18:04:15

标签: asp.net-web-api odata asp.net-web-api2 azure-mobile-services

我有一个带有.Net后端的Azure Mobile服务。

在后端,数据对象使用正确的大小写。例如,MemberNumber。 在azure客户端中,视图模型使用pascal case memberNumber。

我正在使用一个创建ODATA请求的库,我得到: URI中指定的查询无效。找不到名为' memberNumber' on type' arenaapi.DataObjects.Members'。

这种情况会发生: /表/成员%24inlinecount =所有页&安培;%24orderby = memberNumber

如果我更改了它的成员编号。 但是,如果我将请求更改为:

/表/成员%24inlinecount =所有页&安培; $的OrderBy = memberNumber

它也有效。如果$是否编码,似乎模型绑定解析器的工作方式不同。

有什么方法可以修复这个服务器端,这样编码的请求就不会在不将memberNumber更改为MemberNumber的情况下返回400吗?

所有其他的东西,发布,修补等都将pascal cased JSON帖子正确绑定到正确的c#数据对象。

0 个答案:

没有答案