const string QUERY = "INSERT INTO contacts (first_name,last_name) VALUES" +
BuildQuery(c, contacts);
public string BuildQuery(MySQLCommand c, IEnumerable<contact> contacts)
{
List<string> values = new List<string>();
string query = null;
int i = 0;
foreach (var contact in contacts)
{
i++;
query += "(@firstName" + i + ", @lastName" + i + ")";
c.Parameters.AddWithValue("@firstName" + i, contact.first_name);
c.Parameters.AddWithValue("@lastName" + i, contact.last_name);
if(i < contacts.Count)
query += ",";
}
return query
}
Du kan se en relevant tråd här
!. Jag måste ha missat något trivialt, men det är trivialt för dig att fixa. Naturligtvis vet du vad som händer när contacts
har inga element. Jag ser inte fler kantfall. Tänk på att det finns en gräns för hur många sådana parametrar du kan lägga till beroende på mysqls max tillåtna paketstorlek. Du kan ändra den, eller se till att inte överskrida den gränsen. Skål! :)