确认参数化查询的JSON格式正确无误,并在查询语句中使用正确的占位符。以下示例代码演示了如何正确执行参数化查询:
string query = "SELECT * FROM c WHERE c.LastName = @lastName";
string lastName = "Doe";
var queryDefinition = new CosmosSqlQueryDefinition(query);
queryDefinition.UseParameter("@lastName", lastName);
var queryResultSetIterator = container.GetItemQueryIterator(queryDefinition);
while (queryResultSetIterator.HasMoreResults)
{
foreach (var item in await queryResultSetIterator.ReadNextAsync())
{
// Process query results
}
}
在上面的代码中,我们首先定义了一个查询字符串,其中包含占位符“@lastName”。然后,我们创建了一个CosmosSqlQueryDefinition对象,并使用UseParameter方法指定了正确的占位符和参数值。最后,我们使用GetItemQueryIterator方法和查询定义来执行查询,并使用ReadNextAsync方法来读取所有结果。