2015-08-11 3 views
1

Я добавляю несколько данных через мой datagridview с именем 'dgv'. И я хочу сохранить несколько данных в мои сущности 'de' и базу данных "DetailSPH2".Как вставить многие данные из datagridview в базу данных

Но когда я сохраняю несколько данных с помощью «de.SaveChanges();» , Это не сработало. сохраняется только одна строка в datagridview.

Я уже код linq ниже.

Как сохранить все строки в моем документе datagridview?

Пожалуйста, помогите мне.

 for (int i = 0; i < dgv.RowCount; i++) 
     { 
      string KodeBarang = dgv.Rows[dgv.CurrentRow.Index].Cells[0].Value.ToString(); 
      string NamaBarang = dgv.Rows[dgv.CurrentRow.Index].Cells[1].Value.ToString(); 
      string Harga = dgv.Rows[dgv.CurrentRow.Index].Cells[2].Value.ToString(); 
      string JumlahPesananSPH = dgv.Rows[dgv.CurrentRow.Index].Cells[3].Value.ToString(); 
      string TotalPerBarang = dgv.Rows[dgv.CurrentRow.Index].Cells[4].Value.ToString(); 


      DetailSPH2 la = new DetailSPH2(); 
      la.NoSPH = txtNoSPH.Text; 
      la.KodeBarang = KodeBarang; 
      la.NamaBarang = NamaBarang; 
      la.Harga = float.Parse(Harga); 
      la.JumlahPesananSPH = int.Parse(JumlahPesananSPH); 
      la.TotalPerBarang = float.Parse(TotalPerBarang); 

      de.AddToDetailSPH2(la); 

      de.SaveChanges(); 
      } 

ответ

2

С помощью этой линии (и следующие из них)

string KodeBarang = dgv.Rows[dgv.CurrentRow.Index].Cells[0].Value.ToString(); 

вы берете всегда один и тот же CurrentRow и ваш цикл повторяет вставку с теми же значениями.

Вы должны принять индексируются переменной петли i

string KodeBarang = dgv.Rows[i].Cells[0].Value.ToString(); 

и так далее для других переменных

Смежные вопросы