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

Pass list of strings as a Parameter in Parameterized Query in DocumentDB

有没有一种方法可以在 SqlParameter 中传递字符串列表,假设我有 10 位作者,我想查找他们出版的书籍。我知道我可以在 (new 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")
                }
            });   

我认为您要查找的是 SQL IN 关键字,有关详细信息,请参阅 this link

用法示例:

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