我现在要对datagrid 中的内容更新,在点击修改后,提示出错为:
“/升日财务管理软件”应用程序中的服务器错误。
--------------------------------------------------------------------------------未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。代码部分为:
public void dgdepartment_updatecommand(object s,System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
int departmentid = int.Parse(dgdepartment.DataKeys[e.Item.ItemIndex].ToString());
string departmentnamestr = ((TextBox)e.Item.FindControl ("部门名")).Text ;
string sqlstr = "update 部门资料 set 部门名=@departmentnamestr where id=@departmentid";
SqlConnection myconn = new SqlConnection(ConfigurationSettings.AppSettings["connstring"]);
SqlCommand upcmd = new SqlCommand(sqlstr,myconn);
myconn.Open();
upcmd.Parameters.Add("@departmentname",SqlDbType.NVarChar,50);
upcmd.Parameters.Add("@departmentid",departmentid);
upcmd.ExecuteNonQuery();
dgdepartmentbind();
}请问这是什么问题导至,应该怎么改,还有,这个我每次在都要做两次单“编辑“按钮才行,请这是小了什么语句呢?
“/升日财务管理软件”应用程序中的服务器错误。
--------------------------------------------------------------------------------未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。代码部分为:
public void dgdepartment_updatecommand(object s,System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
int departmentid = int.Parse(dgdepartment.DataKeys[e.Item.ItemIndex].ToString());
string departmentnamestr = ((TextBox)e.Item.FindControl ("部门名")).Text ;
string sqlstr = "update 部门资料 set 部门名=@departmentnamestr where id=@departmentid";
SqlConnection myconn = new SqlConnection(ConfigurationSettings.AppSettings["connstring"]);
SqlCommand upcmd = new SqlCommand(sqlstr,myconn);
myconn.Open();
upcmd.Parameters.Add("@departmentname",SqlDbType.NVarChar,50);
upcmd.Parameters.Add("@departmentid",departmentid);
upcmd.ExecuteNonQuery();
dgdepartmentbind();
}请问这是什么问题导至,应该怎么改,还有,这个我每次在都要做两次单“编辑“按钮才行,请这是小了什么语句呢?
upcmd.Parameters.Add("@departmentid",departmentid).Value = departmentid;
string departmentnamestr = ((TextBox)e.Item.FindControl ("部门名")).Text ;//提示为本行错误
string sqlstr = "update 部门资料 set 部门名=@departmentnamestr where id=@departmentid";
SqlConnection myconn = new SqlConnection(ConfigurationSettings.AppSettings["connstring"]);
SqlCommand upcmd = new SqlCommand(sqlstr,myconn);
myconn.Open();
//upcmd.Parameters.Add("@departmentname",SqlDbType.NVarChar,50);
//upcmd.Parameters.Add("@departmentid",departmentid);
upcmd.Parameters.Add("@departmentname",SqlDbType.NVarChar,50).Value = departmentnamestr;
upcmd.Parameters.Add("@departmentid",departmentid).Value = departmentid;
upcmd.ExecuteNonQuery();
dgdepartment.EditItemIndex = -1;
dgdepartmentbind();