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
}
Можете да видите съответна нишка тук
!. Сигурно съм пропуснал нещо тривиално, но това е тривиално, за да го поправите. Разбира се, знаете какво се случва, когато contacts
няма елементи. Не виждам повече крайни случаи. Между другото, имайте предвид, че има ограничение за това колко такива параметри можете да добавите в зависимост от максималния разрешен размер на пакета на mysql. Можете да го промените или да се погрижите да не надвишавате това ограничение. Наздраве! :)