是否可以将参数传递给 SQLQuery 如果可以,如何传递。
public async Task<string> SomeFunction
([ActivityTrigger] string input,
[CosmosDBInput(
databaseName:"dbname",
containerName:"containername",
SqlQuery = "SELECT * FROM c WHERE c.prop = {para} or "@para",
Connection = "DBConnection"
)]
List<someobject> pages,
FunctionContext executionContext){}
这个问题与 Azure Functions 绑定表达式更相关。
是的,您可以让查询动态地根据触发器注入值。查询中使用的绑定表达式应与触发器对象上的属性匹配。
在你的情况下,你有
[ActivityTrigger] string input
,这是一个string
。您似乎无法访问该 input
的任何属性以在查询中绑定?
例如,使用
HTTPTrigger
,您可以执行以下操作:
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = "MyAPI/{deviceId}")] HttpRequest req,
[CosmosDB(
databaseName: "myDb",
containerName: "myContainer",
SqlQuery = "SELECT TOP 20 * FROM c WHERE c.deviceId = {deviceId}",
Connection= "DBConnection"
)] IEnumerable<someobject> items