私はCustomer
という名前のコレクションがあり、各エントリにはNumber
という名前のプロパティがあります。DocumentDB STARTSWITHが.NETで動作していない
[
{
"Number": "K1",
"Label": "Test1"
}
]
:
SELECT * FROM c WHERE STARTSWITH(c.Number, 'K')
これは私に正しい結果を与える:
[
{
"Number": "K1",
"Label": "Test1"
},
{
"Number": "T1",
"Label": "Test2"
}
]
私はAzureのポータルは、このコレクションに対して次のクエリを発射するために使用します。ここで選択したすべてのコマンドの内容は、
しかし、C#でDocumentDB NuGetパッケージを使用すると、
var options = new FeedOptions();
var query = "SELECT * FROM c WHERE STARTSWITH(c.Number, 'K')";
var items = client.CreateDocumentQuery<Customer>(uri, options, query).ToList()
この場合、毎回すべてのアイテム(この場合は2個)が取得されます。
CreateDocumentQuery
が完全にこのステートメントを無視しているようです。
編集
クエリのためのActivityIDは7f473650-f125-4b6b-9d4c-2d520deceebd
です。
いくつかの追加の詳細は、根本的な原因を特定するのに役立ちます。 Fiddlerを実行して、電信で送信されたクエリテキストを確認してください。または、完全なサンプルを貼り付けることができたり、クエリのActivityIDを共有したりすると役立ちます。 –
@AravindRamachandran投稿にアクティビティを追加しました。私はFiddlerをhttpsで正しく動作させることができないので、Fiddlerをチェックすることはできません。私はそこにURLを見ることができません。 – sprinter252