【发布时间】:2017-05-16 20:51:39
【问题描述】:
我的数据库列属于 bigint 类型,并且具有电话号码的值。它在按钮单击事件上显示错误。错误在这一行:
_bal.phone = Convert.ToInt32(txtphone.Text);
为什么会这样?
protected void btnsave_Click(object sender, EventArgs e)
{
_bal.name = txtname.Text;
_bal.age = Convert.ToInt32(txtage.Text);
_bal.email = txtemail.Text;
_bal.password = txtpassword.Text;
_bal.phone = Convert.ToInt32(txtphone.Text);
if (btnsave.Text == "SAVE")
{
_bal.emp_insert();
}
else if (btnsave.Text == "UPDATE")
{
_bal.Lid = int.Parse(ViewState["Loginid"].ToString());
_bal.emp_update();
}
fill_grd();
}
protected void grd_RowCommand(object sender, GridViewCommandEventArgs e)
{
_bal.Lid = int.Parse(e.CommandArgument.ToString());
if (e.CommandName == "editing")
{
DataSet ds = new DataSet();
ds = _bal.emp_edit();
if (ds.Tables[0].Rows.Count > 0)
{
txtname.Text = ds.Tables[0].Rows[0]["name"].ToString();
txtage.Text = ds.Tables[0].Rows[0]["age"].ToString();
txtemail.Text = ds.Tables[0].Rows[0]["email"].ToString();
txtpassword.Text = ds.Tables[0].Rows[0]["password"].ToString();
txtphone.Text=ds.Tables[0].Rows[0]["phone"].ToString();
}
btnsave.Text = "UPDATE";
ViewState["Loginid"] = e.CommandArgument.ToString();
}
else if (e.CommandName == "deleting")
{
_bal.emp_delete();
fill_grd();
}
}
【问题讨论】:
-
>int 类型表示带符号的 32 位整数,其值介于 –2147483648 和 2147483647 之间。
-
无法解决error.plz帮助
-
如果输入的电话号码超过最大值,应该抛出异常。
-
我是新手,请您帮忙
-
它工作正常。
标签: c# asp.net sql-server bigint