Добавление данных в бд из коллекции

Рейтинг: 0Ответов: 1Опубликовано: 21.04.2015

Собственно, есть 2 грида, один заполняется коллекцией, данные в коллекции - данные из бд.

Метод заполнения коллеции

 public List<Food> GetFoods()
 {
     List<Food> Foods = new List<Food>();
     string query = "select * from Food";
     MySqlConnection sqlcon = new MySqlConnection(ConnectionString);
     MySqlCommand cmd = new MySqlCommand(query, sqlcon);
     cmd.CommandType = System.Data.CommandType.Text;
     sqlcon.Open();
     MySqlDataReader sqlreader = cmd.ExecuteReader();
     object[] row;
     while (sqlreader.Read())
     {
         row = new object[sqlreader.FieldCount];
         sqlreader.GetValues(row);
         Foods.Add(new Food()
         {
             Name = row[0].ToString(),
             Belki = (decimal)row[1],
             Jiri = (decimal)row[2],
             Uglevodi = (decimal)row[3],
             Ccal = (decimal)row[4],
             Voda = (decimal)row[5],
             FoodID = (int)row[6],
         });
     }
     sqlreader.Close();
     return Foods;
 }

Заполнение грида из коллекции

 FoodProvider p = new FoodProvider();
 List<Food> food = p.GetFoods();
 GridOne.ItemsSource = food;

В процессе работы программы во второй грид (вторую коллекцию List<Food>) добавляются или удаляются записи. Мне необходимо, чтобы по клику на кнопку, содержание второй коллекции добавлялось в бд. Подскажите, пожалуйста, как инсертнуть коллекцию.

Ответы

▲ 1

Как вариант, сделать цикличное перечисление элементов коллекции и insert каждого элемента в базу. Либо попытаться связать коллекцию с dataset и использовать его.