Prasanth Aman Prasanth Aman - 27 days ago 11
ASP.NET (C#) Question

.NET - c# - Cross partition query is required but disabled trouble on DocumentDB data access

I have written the following code to fetch a record from the DocumentDB

private static void QueryDocuments1(DocumentClient client)
{

IQueryable<SearchInput> queryable =
client.CreateDocumentQuery<SearchInput>(UriFactory.CreateDocumentCollectionUri(DocumentDBName, DocumentDBCollectionName))
.Where(x => x.Receiver == "8907180");
List<SearchInput> posts = queryable.ToList();
}


And it is showing the following error on the code line
List<SearchInput> posts = queryable.ToList();



{"Cross partition query is required but disabled. Please set
x-ms-documentdb-query-enablecrosspartition to true, specify
x-ms-documentdb-partitionkey, or revise your query to avoid this
exception.\r\nActivityId: xxxxxx-xxxx-xxx-xxx-xxxxxxx"}


Please help me on it...

Answer Source

You should use CreateDocumentQuery method with FeedOptions object as a parameter, this class has a property for x-ms-documentdb-query-enablecrosspartition called EnableCrossPartitionQuery.

Please follow links https://msdn.microsoft.com/library/en-us/Dn850285.aspx For REST https://docs.microsoft.com/en-us/rest/api/documentdb/querying-documentdb-resources-using-the-rest-api