ich eine Anfrage an Azure Tabellen Speicher zu senden, die eine Reihe von Organisationen, die mit einer Bedingung auswählt:Azure Table Storage-Filterfehler?
$filter=
(PartitionKey eq 'key')
and
(
(
(RowKey gt '08D372E4E0A02B2600000000')
and
(RowKey le '08D372E4E515E3E9FFFFFFFF')
)
and
(
(Done ne 'true')
or
(EndTimestamp gt '635978299756075046')
)
)
Ich brauche alle Datensätze in einem Bereich, der nach entweder nicht vollständig (Done ne ‚true‘) oder vollständig bestimmte Zeit (EndTimestamp gt '635978299756075046'). Fertig ist 'bool?' und EndTimestamp ist "Int64?".
In Fiddler kann ich deutlich sehen, dass ein Datensatz wie folgt zurückgegeben zurück:
{
"PartitionKey":"key",
"RowKey":"08D372E4E0A0B8F5002CDBE3",
"Done":true,
"[email protected]":"Edm.Int64",
"EndTimestamp":"635978299737021249",
}
Was nicht erfüllt die EndTimestamp Bedingung: 6359782997 ist offensichtlich weniger als 6359782997 .
Scheint wie ein Fehler, oder fehlt mir etwas?
Ich kann zusätzliche Prüfungen zur Laufzeit als Workaround durchführen, aber (1) die den Zweck der Filterung auf Server-Seite vereitelt und (2) Ich möchte den Verkehr und die Anzahl der Abfragen reduzieren - es kann Tausende von Entitäten geben welche die Bedingung nicht erfüllen.