Как передавать запросы через http, если получатель может обрабатывать только SQLStatements или выражения

#c# #azure #odata #azure-cosmosdb

#c# #azure #odata #azure-cosmosdb

Вопрос:

Недавно я начал использовать CosmosDB с основным (SQL) API для использования CosmosDB в качестве DocumentDB. Но интерфейс CosmosDB, в первую очередь CosmosDBClient.CreateDocumentQuery() [1] и .CreateDatabaseQuery() [2] принимает только выражения или инструкции SQL. Теперь я застрял, потому что запрос поступает в виде строки, но его нужно как-то перевести, и я боюсь, что все, что я пытаюсь, никогда не будет достаточно хорошим, чтобы считаться стабильным.

  • Теперь возникает вопрос, как обрабатывать запрос, который поступает из веб-интерфейса и должен использоваться из внутреннего интерфейса sqlstatement / expression?

Если вы спросите, почему запрос поступает в виде строки: Мы используем микросервисы, которые запускаются через (например:) HTTP GET . И с этим GET должен быть предоставлен запрос, например, в качестве параметра …?name =Hans amp; familyname =Wurst Или даже ODATA.

Ссылки:

Ответ №1:

Где вы можете использовать SQL API с клиентской библиотекой для создания документа (см. DocumentClient.Метод CreateDocumentQuery) и создать базу данных (см. DocumentClient.Метод CreateDatabaseQuery), существует соответствующий REST API для выполнения того же вызова и возврата элементов в строке JSON:

ОСТАЛЬНОЕ: создать документ

ОСТАЛЬНОЕ: создать базу данных

Как вариант.

Комментарии:

1. Я изучил, как запрашивать документы через REST из CosmosDB. Запрос должен быть SQLStatement, так что это не решает проблему. learn.microsoft.com/en-us/rest/api/cosmos-db /…