如何使用动态数据进行过滤的OData电话吗?(How to filter oData call us

2019-10-20 18:36发布

我使用的网址如下使AJAX调用。

http://somecomputer/Service.svc/Method?$filter=SomeDate gt DateTime'2014-08-24'

这工作完全和的那一刻,我产生我的AJAX调用之前描述的日期正确的字符串。 但是,我不知道是否有可能匹配的动态值,比如今天lastyear或什么不可以的日期。

我还没有发现其中的任何文件时使用Google所以也许这是不可能的,但我仍然需要检查与SO智慧。

Answer 1:

对的,这是可能的。 有这样的事情内置查询功能中的OData,你可以在查询选项用来表示动态值。 从链接,你可以看到有这个功能now()下的“日期函数”类别和ODataLib已经支持其履行最新版本的URL解析器。 (请参阅发行说明这里 )。

但有两件事情你需要注意的:

  1. ODataLib仅与这样的功能的请求URL解析交易,需要由服务实施者可以进一步实现了它的实际的逻辑。
  2. 按照的OData V3协议(一节10.2.3.1.2的外观了这个页面 ),V3没有这样的动态内置的查询功能。


Answer 2:

当然是。 举个例子:

var today = new Date().toISOString().substr(0,10);
var url = "http://somecomputer/Service.svc/Method?"
  + "$filter=SomeDate gt DateTime'" + today + "'";


文章来源: How to filter oData call using dynamic date?