Входная привязка CosmosDB с атрибутом Id не работает - PullRequest
0 голосов
/ 20 марта 2019

Попытка привязать функцию Azure к вводу Cosmos DB, которая не работает для запроса Id, но работает, если я не установил Id и не получил все документы из коллекции.

public static Task somefunction(
        [HttpTrigger(AuthorizationLevel.Anonymous, "post")] HttpRequest req,
        [CosmosDB(
            databaseName: "testdatabase",
            collectionName: "testinput",
            ConnectionStringSetting = "AzureWebJobsCosmosDBConnectionString" ,
            Id = "{Query.to}",
            PartitionKey = "/id")] dynamic document, ILogger log)
{
    if (document == null) {
        //dosomething
    }
    else {
       //do something
    }
}

Входящий http-запрос имеет параметр запроса относительно. Это не возвращает никакого документа, даже если документ со значением id присутствует в коллекции. Если я удаляю Id и ключ раздела и записываю как IEnumerable, то он выбирает все документы из коллекции. Есть мысли, что может быть не так с Id-запросом?

Кроме того, в соответствии с doc PartitionKey не требуется, но если я не укажу это во время выполнения, он сообщит об ошибке «Для этой операции должно быть указано значение PartitionKey.». Я использую функцию версии 2.

...