Obwohl DocumentDb String Bereich Vergleiche unterstützt,Documentdb Linq-Abfrage mit String-Vergleich
client.CreateDocumentQuery<Family>( collectionLink, "SELECT * FROM Families f WHERE f.Address.State > 'NY'", new FeedOptions { EnableScanInQuery = true });
Sie können auch DocumentDB Linq Abfragen wie folgt konstruieren.
var zipLinqQuery = from z in db.ZIPMASTERs where z.CORP == listItem.CORP && z.ZIPBEG.CompareTo(listItem.ZIPCODE) <= 0 && z.ZIPEND.CompareTo(listItem.ZIPCODE) >= 0 select z;
von Issues Doing a String Comparison in LINQ
Ich bin nicht in der Lage dynamisch Linq String-Vergleich Abfragen mit Linq-Ausdrücke zu konstruieren:
Expression<Func<string, string, bool>> stringCompare = (x, y) => x.CompareTo(y) > 0; return Expression.Invoke(stringCompare, new[] { left, right });
erzeugt die folgende Ausgabe.
(Invoke((x, y) => x.CompareTo(y), x.state, "NY") > 0)
Es scheint, wird die DocumentDB API unterstützen Invoke nicht und es nicht unterstützt "Vergleichen". Es unterstützt "CompareTo" wie oben beschrieben, aber nicht beim dynamischen Konstruieren eines Linq-Ausdrucksbaums. Irgendwelche Vorschläge sehr geschätzt.