将动态创建的SQL参数作为匿名类型传递给dapper

时间:2016-07-18 18:33:14

标签: c# dapper

将动态创建的SQL参数发送到dapper。

在将多个参数发送到精简版时,我通常会执行以下操作:

        return connection.Query<Customer>(sql.ToString(), 
            new
            {
                Status = status,
                ZipCodes = zipCodes,
                Types = type
            }).ToList();

但是我需要找出一种方法来根据我将拥有的键值对列表动态生成这些参数。

我希望能够循环遍历列表并创建params以动态地传递给dapper。

1 个答案:

答案 0 :(得分:10)

以下是我如何修改你所拥有的内容。在这个片段中,Params是你的字典。

DynamicParameters dbParams = new DynamicParameters();
dbParams.AddDynamicParams(params);
return connection.Query<Customer>(sql.ToString(),dbParams).ToList();