私は(C#の場合)コスモスグラフで次のクエリを実行している:あなたが "で「L」を見ることができるように(例えば、「等」)の文字「L」でのバグ
IDocumentQuery<dynamic> query = db.Client.CreateGremlinQuery<dynamic>(db.Graph, $"g.addV().property('value','{HttpUtility.UrlEncode("\"like\"")}')");
var result = query.ExecuteNextAsync().Result.FirstOrDefault();
をlike "は小文字です。しかし、Azureポータルの結果を見ると "Like"が格納されています!質問はです。この問題はどこから起こっていますか?。 cosmos dbには'
などの特定の文字を格納する際に問題があるため、HttpUtility.UrlEncode
が存在することに注意してください(実際にはこれらの文字はありませんが実際にはあります)。 問題はHttpUtility.UrlEncode
にありません。その結果は監視されていて、 "%22like%22"でした。
私がテストしたように、この問題は "b"をインスタンスとして使用しない "l"文字で発生します。 Azureのポータルでの出力を参照してください:
「L」が異なる方法で処理されるという単純な方法はないことが分かります。 –
@PanagiotisKanavos確かにそうです。しかし、このクエリではどうなりましたか?これは再現可能なバグです。あなたが試すことができます。 – OmG
保存する*実際の文字列は何ですか?補間する前に保管して点検してください。 'HttpUtility.UrlEncode'の結果は何ですか?なぜ、Uri.EscapeUriStringではなくHttpUtility.UrlEncodeですか?問題ではないが、結果は同じでなければならない。 –