Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure cosmosdb 在DocumentDB的参数化查询中将字符串列表作为参数传递_Azure Cosmosdb_Parameterized Query - Fatal编程技术网

Azure cosmosdb 在DocumentDB的参数化查询中将字符串列表作为参数传递

Azure cosmosdb 在DocumentDB的参数化查询中将字符串列表作为参数传递,azure-cosmosdb,parameterized-query,Azure Cosmosdb,Parameterized Query,是否有一种方法可以在SqlParameter中传递字符串列表,假设我有10位作者,我想查找他们出版的书籍。我知道我可以分别在(新SqlParameter)中创建10个参数。但是有没有一种方法可以传递一个列表并得到结果呢 IQueryable<Book> queryable = client.CreateDocumentQuery<Book>(collectionSelfLink, new SqlQuerySpec {

是否有一种方法可以在SqlParameter中传递字符串列表,假设我有10位作者,我想查找他们出版的书籍。我知道我可以分别在(新SqlParameter)中创建10个参数。但是有没有一种方法可以传递一个列表并得到结果呢

IQueryable<Book> queryable = client.CreateDocumentQuery<Book>(collectionSelfLink,
            new SqlQuerySpec
            {
                QueryText = "SELECT * FROM books b WHERE (b.Author.Name = @name)", 
                Parameters = new SqlParameterCollection() 
                { 
                      new SqlParameter("@name", "Herman Melville")
                }
            });   
IQueryable queryable=client.CreateDocumentQuery(collectionSelfLink,
新SqlQuerySpec
{
QueryText=“从书籍b中选择*,其中(b.Author.Name=@Name)”,
参数=新的SqlParameterCollection()
{ 
新的SqlParameter(“@name”,“Herman Melville”)
}
});   

我想您要查找的是关键字中的SQL
,有关更多信息,请参阅

用法示例:

SELECT *
FROM books
WHERE books.Author.Name IN ('Helena Petrovna Blavatsky', 
'Hermes Trismegistus', 'Heinrich Cornelius Agrippa')

“Helena Petrovna Blavatsky”、“Hermes Trismegistus”、“Heinrich Cornelius Agrippa”这句话能否作为参数中的参数传递,因为我试图避免sql注入,我想在参数中传递字符串列表,这会发生吗?@himanshukaushal在DocumentDB Linq Provider AFAIK中还不支持关键字中的SQL
,请参阅。在它们支持
关键字中的
之前,一个解决方法是如上所述执行SQL查询,您可以使用
String.Join(“,”,authorsArray)
方法传入逗号分隔的数组元素列表。