日期时间范围的OData查询过滤器

use*_*903 11 odata breeze

我在服务返回的数据中有一个DateTime属性,如:"SDateTime":"2014-06-29T03:30:00.000"

我需要编写一个查询来获取日期小于"2014-06-26T03:30:00.000"且大于"2014-06-23T03:30:00.000"的集合

如何为dateTime编写过滤器?

谢谢.

Tan*_*nfu 19

$ filter = SDateTime gt datetime'2014-06-26T03:30:00.000'和SDateTime lt datetime'2014-06-23T03:30:00.000'

它适用于此服务:http://services.odata.org/V3/OData/OData.svc/Products?$filter=ReleaseDate%20gt%20datetime%271995-09-01T00 : 00 : 00%27%20and%20ReleaseDate %20LT%20datetime%271995-12-01T00:00:00%27


avi*_*erg 13

在OData V4中,日期过滤格式已经改变,正确的过滤器将是

$filter=SDateTime gt 2014-06-23T03:30:00.000Z and SDateTime lt 2014-06-26T03:30:00.000Z
Run Code Online (Sandbox Code Playgroud)

例如

http://services.odata.org/V4/OData/OData.svc/Products?%24filter=ReleaseDate%20gt%201995-09-01T00:00:00Z%20and%20ReleaseDate%20lt%201995-12-01T00:00 :00Z

对于以前版本的OData,请参阅上一个答案