我很难找到相关细节。我正在使用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
有人会理解它正在这样做吗?
答案 0 :(得分:0)
它抱怨的原因是您使用的格式仅用于比较实际日期字段;列表中的字段是单行文本字段。
幸运的是,您的日期字符串格式化的方式使得它们的字母顺序与其时间顺序很好地对应。
因此,只要您不尝试将比较值转换为日期时间,就可以执行相同的过滤逻辑来检索您的项目范围;把它们留作串。
$filter=(Column2 ge '2016-04-06') and (Column2 lt '2016-04-09')