siparisDetayy order = new siparisDetayy();
public void gridControl()
{
for (int i = 0; i < dtGridSiparis.RowCount-1; i++)
{
order.productID =(dtGridSiparis.Rows[i].Cells[0].Value).ToString();
order.productName = dtGridSiparis.Rows[i].Cells[1].Value.ToString();
order.customer = dtGridSiparis.Rows[i].Cells[2].Value.ToString();
order.faturaNo = dtGridSiparis.Rows[i].Cells[3].Value.ToString();
order.miktar = dtGridSiparis.Rows[i].Cells[4].Value.ToString();
order.price = dtGridSiparis.Rows[i].Cells[5].Value.ToString();
}
ctx.siparisDetayys.InsertOnSubmit(order);
ctx.SubmitChanges();
}
我尝试使用LINQ插入我的数据数据,即使我为循环进行了,但仍然只添加一行。
拉胡尔所说的话,但也添加了第一行" siparisdetayy order = new siparisdetayy();"在循环内。您必须为每一行创建一个新实体。
是的,这是因为您实际上仅插入一个order
记录,并希望您从Loop Last Iteeration收集的最后一个记录。如下
for (int i = 0; i < dtGridSiparis.RowCount-1; i++)
{
order.productID =(dtGridSiparis.Rows[i].Cells[0].Value).ToString();
order.productName = dtGridSiparis.Rows[i].Cells[1].Value.ToString();
order.customer = dtGridSiparis.Rows[i].Cells[2].Value.ToString();
order.faturaNo = dtGridSiparis.Rows[i].Cells[3].Value.ToString();
order.miktar = dtGridSiparis.Rows[i].Cells[4].Value.ToString();
order.price = dtGridSiparis.Rows[i].Cells[5].Value.ToString();
//Save or Insert the record to database
ctx.siparisDetayys.InsertOnSubmit(order);
ctx.SubmitChanges();
}