Anda harus melakukannya sedikit berbeda. Di Dapper, ini cocok dengan properti AKA konvensi atau nama bidang yang identik dengan parameter SQL. Jadi, dengan asumsi Anda memiliki MyObject
:
public class MyObject
{
public int A { get; set; }
public string B { get; set; }
}
Dan dengan asumsi processList = List<MyObject>
, Anda ingin melakukan ini
foreach (var item in processList)
{
string processQuery = "INSERT INTO PROCESS_LOGS VALUES (@A, @B)";
connection.Execute(processQuery, item);
}
Perhatikan bahwa MyObject
nama properti A dan B cocok dengan nama parameter SQL @A dan @B.
Jika Anda tidak ingin mengganti nama objek, Anda dapat menggunakan tipe anonim untuk melakukan pemetaan alih-alih tipe konkret:
foreach (var item in processList)
{
string processQuery = "INSERT INTO PROCESS_LOGS VALUES (@A, @B)";
connection.Execute(processQuery, new { A = item.A, B = item.B });
}
EDIT:
Per komentar Marc Gravell, Anda juga dapat meminta Dapper melakukan pengulangan untuk Anda:
string processQuery = "INSERT INTO PROCESS_LOGS VALUES (@A, @B)";
connection.Execute(processQuery, processList);