REST - 单行文本列上的日期范围过滤器

时间:2016-04-27 18:06:34

标签: rest sharepoint sharepoint-2010

我很难找到相关细节。我正在使用Sharepoint 2010并使用REST来获取我的数据。我想使用REST查询日期范围:

http://localhost/_vti_bin/listdata.svc/TEST?$filter=(Column2 ge datetime'2016-04-06') and (Column2 lt datetime'2016-04-09')

但是我收到了一个错误:

Opérateur 'ge' incompatible avec les types d'opérande 'System.String' et 'System.DateTime' à la position 20.

很抱歉,这是法语,但粗略转换为'ge'运算符与'System.String'和'System.DateTime'类型不兼容。

以下是我的列的示例,它们都是单行文本列。

Column1    Column2             Column3
BLah       2016-04-01 16:00    Blah1
Blahs      2016-04-02 16:00    Blahs2
Blhass     2016-04-03 16:00    Blahss3
Blhasss    2016-04-06 16:00    Blhasss4
sBlah      2016-04-08 16:00    sBlah5
ssBlah     2016-04-08 16:00    ssBlah6
sssBlah    2016-04-09 16:00    sssBlah7

有人会理解它正在这样做吗?

1 个答案:

答案 0 :(得分:0)

它抱怨的原因是您使用的格式仅用于比较实际日期字段;列表中的字段是单行文本字段。

幸运的是,您的日期字符串格式化的方式使得它们的字母顺序与其时间顺序很好地对应。

因此,只要您不尝试将比较值转换为日期时间,就可以执行相同的过滤逻辑来检索您的项目范围;把它们留作串。

$filter=(Column2 ge '2016-04-06') and (Column2 lt '2016-04-09')