आपको इसे थोड़ा अलग करना होगा। डैपर में, यह कन्वेंशन AKA प्रॉपर्टी या फ़ील्ड नाम SQL पैरामीटर के समान होने पर मेल खाता है। तो, मान लें कि आपके पास MyObject
था :
public class MyObject
{
public int A { get; set; }
public string B { get; set; }
}
और processList = List<MyObject>
. मानते हुए , आप यह करना चाहेंगे
foreach (var item in processList)
{
string processQuery = "INSERT INTO PROCESS_LOGS VALUES (@A, @B)";
connection.Execute(processQuery, item);
}
ध्यान दें कि MyObject
संपत्ति के नाम ए और बी एसक्यूएल पैरामीटर नामों @ ए और @ बी से मेल खाते हैं।
यदि आप वस्तुओं का नाम बदलना नहीं चाहते हैं, तो आप विशिष्ट प्रकारों के बजाय मैपिंग करने के लिए अनाम प्रकारों का उपयोग कर सकते हैं:
foreach (var item in processList)
{
string processQuery = "INSERT INTO PROCESS_LOGS VALUES (@A, @B)";
connection.Execute(processQuery, new { A = item.A, B = item.B });
}
संपादित करें:
मार्क ग्रेवेल की टिप्पणी के अनुसार, आप डैपर को अपने लिए लूप भी करवा सकते हैं:
string processQuery = "INSERT INTO PROCESS_LOGS VALUES (@A, @B)";
connection.Execute(processQuery, processList);