Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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
C# 如何正确使用列表作为Npgsql和Dapper的参数_C#_Dapper_Npgsql - Fatal编程技术网

C# 如何正确使用列表作为Npgsql和Dapper的参数

C# 如何正确使用列表作为Npgsql和Dapper的参数,c#,dapper,npgsql,C#,Dapper,Npgsql,我不知道如何使用列表作为查询中的参数。在不同的情况下,我在这方面遇到了一些麻烦,但这里是当前的一个。我试图通过删除测试用户创建的所有内容来清理测试后的数据。代码如下: var idList = new List<Guid>() { SYS_ADMIN_GUID, OPERATOR_GUID, OPERATOR_ELECTRONICS_TECH_GUID, UNIT_MANAGER_GUID, AREA_MANAGER_GUID }; using (NpgsqlConnection

我不知道如何使用
列表
作为查询中的参数。在不同的情况下,我在这方面遇到了一些麻烦,但这里是当前的一个。我试图通过删除测试用户创建的所有内容来清理测试后的数据。代码如下:

var idList = new List<Guid>() { SYS_ADMIN_GUID, OPERATOR_GUID, OPERATOR_ELECTRONICS_TECH_GUID, UNIT_MANAGER_GUID, AREA_MANAGER_GUID };

using (NpgsqlConnection c = new NpgsqlConnection(TestHelper.ConnectionString))
{
    c.Open();

    c.Execute(@"delete from ""BlueStakes"".""MarkRequestStatuses"" where ""CreatedById"" in :idList", new { idList });
}
var idList=new List(){SYS\u ADMIN\u GUID、OPERATOR\u GUID、OPERATOR\u ELECTRONICS\u TECH\u GUID、UNIT\u MANAGER\u GUID、AREA\u MANAGER\u GUID};
使用(NpgsqlConnection=newnpgsqlconnection(TestHelper.ConnectionString))
{
c、 Open();
c、 执行(@“从”“BlueStakes”“删除”“MarkRequestStatuses”“其中”“CreatedById”“位于:idList”“new{idList});
}
我还尝试使用
@idList
作为参数,但也不起作用。这就是它给出的错误:

Npgsql.postgresception:Npgsql.postgresception:42601:在“$1”处或附近出现语法错误


显然,查询无法识别列表并将其插入参数中,但我无法找出原因。

在PostgreSQL中,您不能将
中的
与列表一起使用。要检查列表中是否存在元素,请使用以下语法:
WHERE“CreatedById”=ANY(:idList)

以下是您为将来的参考资料所说的文档: