[英]Executing Insert Statement with Dapper
我正在尝试使用@MarcGravell在下面的帖子和评论中解释的方法
我试图从
string sql2 = string.Format(@"INSERT INTO #cusipSedolList (cusipSedol) values (@A)");
IDbConnection con = new SqlConnection(_connectionString);
using (con)
{
con.Open();
foreach (var cusipSedol in cusipSedolsParameter)
{
con.Execute(sql2, new { A = cusipSedol.CusipSedol });
}
}
至
string sql2 = string.Format(@"INSERT INTO #cusipSedolList (cusipSedol) values (@CusipSedol)");
IDbConnection con = new SqlConnection(_connectionString);
using (con)
{
con.Open();
con.Execute(sql2, new {cusipSedolsParameter});
}
与
var cusipSedolsParameter = new List<CusipSedols>();
public class CusipSedols
{
public string CusipSedol { get; set; }
}
但是我收到一个错误,如果它有多个CusipSedol,我必须声明@CusipSedol。
在第二个示例中,您传递参数new {cusipSedolsParameter}
,它是一个匿名类型对象,具有一个名为cusipSedolsParameter
的单个成员。
相反,您只想传递列表。 您的通话应如下所示:
con.Execute(sql2, cusipSedolsParameter);
然后,Dapper将枚举您的列表,并对每个条目执行查询,将查询参数与条目类型的属性进行匹配。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.