我收到了这个运行时错误,我的
以下是运行时错误的内容:
这是我第一层的代码:
id
不是 null ,我已经在代码中检查过,你将会看到,并且我正在使用 telerik GridView
。以下是运行时错误的内容:
我试图从另一个表单中获取参数化查询 '@_fName nvarchar(4),@_lName nvarchar(2),@_phone nvarchar(6),@_a' 需要提供参数 '@_id',但未提供。
id
,这就是为什么我写成这样的原因。这是我第一层的代码:
private void btnEdt_Click(object sender, EventArgs e)
{
Ref_View_Model = new View_model._View_Model();
Ref_C = new Customers();
foreach (var RowInfo in Ref_C.radGridView1.SelectedRows)
{
FireCell = RowInfo.Cells[0].Value.ToString();
if (FireCell==null)
{
MessageBox.Show("null");
}
}
//Ref_C.radGridView1.CurrentRow.Delete();
Ref_C.customersTableAdapter.Update(Ref_C.sales_and_Inventory_SystemDataSet);
Ref_C.customersTableAdapter.Fill(Ref_C.sales_and_Inventory_SystemDataSet.Customers);
Ref_View_Model.GetEditCustomers(FireCell, txtFName.Text, txtLName.Text, txtPhn.Text, txtDdrss.Text);
}
这是我在最后一层的代码
public void EditCustomres( string _id,string _fName, string _lName,string _phone, string _address)
{
Connection_String = @"Data Source=MOSTAFA-PC;Initial Catalog=" + "Sales and Inventory System" + ";Integrated Security=TrueData Source=MOSTAFA-PC;Initial Catalog=" + "Sales and Inventory System" + ";Integrated Security=True;";
Query = "update Customers " +
"set FName=@_fName ,LName=@_lName ,Phone=@_phone ,[Address]=@_address" +" "+
"where Id like @_id";
using (Con=new SqlConnection(Connection_String))
using (Cmd=new SqlCommand(Query,Con))
{
Cmd.Parameters.Add("@_fName", SqlDbType.NVarChar);
Cmd.Parameters.Add("@_lName", SqlDbType.NVarChar);
Cmd.Parameters.Add("@_phone", SqlDbType.NVarChar);
Cmd.Parameters.Add("@_address", SqlDbType.NVarChar);
Cmd.Parameters.Add("@_id", SqlDbType.Int);
Con = Cmd.Connection;
Con.Open();
Cmd.Parameters["@_fName"].Value = _fName;
Cmd.Parameters["@_lName"].Value = _lName;
Cmd.Parameters["@_phone"].Value = _phone;
Cmd.Parameters["@_address"].Value = _address;
Cmd.Parameters["@_id"].Value = _id;
Cmd.ExecuteNonQuery();
Cmd.Dispose();
}
}
NumberStyles.Integer, CultureInfo.InvariantCulture
。 - Mostafa Bouzari