尝试使用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,它会报告错误“必须为此操作提供PartitionKey值。”。我正在使用功能版本2。