Astoria 为什么ADO.NET数据服务使用$作为查询参数标识符?

Astoria 为什么ADO.NET数据服务使用$作为查询参数标识符?,astoria,wcf-data-services,Astoria,Wcf Data Services,是否有理由需要“?”或“&”和“$”来标识查询参数 这是实现泄漏到接口中的情况吗?我不一定要向用户公开我正在使用.NET数据服务这一明显的事实。特别是,如果以后我想将实现更改为其他技术 或者,是否有一种简单的方法来禁用“$”标识查询选项的需要 所以它看起来更像样 /Customers?$skip=30&$top=10 谢谢以$字符开头的查询字符串选项称为系统查询选项,表示ADO.NET数据服务支持的操作。基本上,这样做是为了区分系统范围内的“关键字”和模型属性名称 要解决此问题,您可以

是否有理由需要“?”或“&”和“$”来标识查询参数

这是实现泄漏到接口中的情况吗?我不一定要向用户公开我正在使用.NET数据服务这一明显的事实。特别是,如果以后我想将实现更改为其他技术

或者,是否有一种简单的方法来禁用“$”标识查询选项的需要

所以它看起来更像样

/Customers?$skip=30&$top=10

谢谢

$
字符开头的查询字符串选项称为系统查询选项,表示ADO.NET数据服务支持的操作。基本上,这样做是为了区分系统范围内的“关键字”和模型属性名称


要解决此问题,您可以尝试将URL从
/Customers?skip=30&top=10
重写为
/Customers?$skip=30&$top=10
,甚至在HTTP头中传输此系统信息(如果这是一个选项)。

是的,在msdn上找到了此选项,解释了语法
/Customers?skip=30&top=10