2016-04-27 3 views
0

これについて詳細を見つけるのに苦労しています。私のSharepoint 2010を使用し、RESTを使用してデータを取得します。私は、RESTを使用して日付の範囲を照会したいと思います:REST - 単一行のテキスト列の日付範囲フィルタ

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

しかし、私はエラーを取得しています:それはフランス語だ申し訳ありませんが、「GE」演算子は、「システムと互換性がありませんにおおよそ変換

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

.String 'et' 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

あなたが使用しているフォーマットは、実際の日付フィールドを比較するためだけに使用されているという理由からです。リスト内のフィールドは1行のテキストフィールドです。

幸いにも、アルファベット順が時間的順序にうまく対応するように日付文字列をフォーマットしています。

したがって、比較値をdatetimesに変換しようとしない限り、同じフィルタリングロジックを実行してアイテムの範囲を取得することができます。それらを文字列のままにしておきます。

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

+0

あのトリックをやってくれてありがとう! –

関連する問題