Моя проблема заключается в том, что, когда он обновляется добавляет предыдущие данные, которые были в нем снова и сноваМой набор данных не работает должным образом
и я использую Telerik вид на сетке
здесь, мой код в 3-х слоях
первых один
private void btnSbmt_Click(object sender, EventArgs e)
{
foreach (var row in radGridView1.Rows)
{
_MyName.Add((string)row.Cells[1].Value);
}
foreach (var row in radGridView1.Rows)
{ // 0 - first column
_MyAmount.Add((int)row.Cells[2].Value);
}
foreach (var row in radGridView1.Rows)
{
_MyPrice.Add((decimal)row.Cells[3].Value);
}
Ref_View_Model = new View_model._View_Model();
Ref_View_Model.GetInsertProduct(_myName, _myAmount, _myPrice, txtDt.Text);
radGridView1.CurrentRow.Delete();
productTableAdapter.Update(sales_and_Inventory_SystemDataSet);
productTableAdapter.Fill(sales_and_Inventory_SystemDataSet.Product);
MessageBox.Show("Product(s) were added", "Done", MessageBoxButtons.OK);}
второго
public void GetInsertProduct(List<string> _name, List<int> _amount, List<decimal> _price, string _date)
{
Ref_Model = new Model._Model();
Ref_Model.InsertProduct(_name, _amount, _price, _date);
}
и третий один
public void InsertProduct(List<string> _myName,
List<int> _myAmount,
List<decimal> _myPrice, string _date)
{ Connection_String = MyConnection строка
Query = @"INSERT INTO dbo.product(Name, Amount, Price, [date])
VALUES(@Name, @Amount, @Price, @Date);";
using (Con = new SqlConnection(Connection_String))
using (Cmd = new SqlCommand(Query, Con))
{
Cmd.Parameters.Add("@Name", SqlDbType.NVarChar);
Cmd.Parameters.Add("@Amount", SqlDbType.Int);
Cmd.Parameters.Add("@Price", SqlDbType.Decimal);
// Cmd.Parameters.Add("@Date", SqlDbType.NVarChar);
Cmd.Parameters.Add("@Date", SqlDbType.DateTime).Value = Convert.ToDateTime(_date);
Cmd.Connection = Con;
Con.Open();
int recordsToAdd = _myName.Count();
for(int x = 0; x < recordsToAdd; x++)
{
Cmd.Parameters["@Name"].Value = _myName[x];
Cmd.Parameters["@Amount"].Value = _myAmount[x];
Cmd.Parameters["@Price"].Value = _myPrice[x];
Cmd.Parameters["@Date"].Value = _date;
Cmd.ExecuteNonQuery();
}
}
}