Textbox不允许ASP .Net中的空值

时间:2014-12-29 06:11:18

标签: asp.net sql-server-2008 casting

我在数据库中有Int数据类型的列,但textbox不允许null。它给出了错误"输入字符串的格式不正确"。

objinsert.VehGrpID = Convert.ToInt32(txtVehGroupID.Text);

4 个答案:

答案 0 :(得分:2)

改用TryParse。

int GrpID = 0;
int.TryParse(txtVehGroupID.Text, out GrpID)
if(GrpID > 0)
  objinsert.VehGrpID = GrpID;

答案 1 :(得分:0)

你可以特别说出空值。当然,我假设空值应映射到null

objinsert.VehGrpID = string.IsNullOrWhiteSpace(txtVehGroupID.Text) ? null : (int?)Convert.ToInt32(txtVehGroupID.Text);

您还需要调整代码以相应地设置文本框的文本。

您的问题也有点不清楚,因为您说文本框不允许空值,但您没有向我们展示调整文本框文本的任何代码。

答案 2 :(得分:0)

您还可以使用DBNull.Value字段。如果数据库字段缺少数据,则可以使用DBNull.Value属性。

点击此链接http://msdn.microsoft.com/en-us/library/system.dbnull.value%28v=vs.110%29.aspx

答案 3 :(得分:0)

试试这个

int VehGrpID = Convert.ToInt32(txtVehGroupID.Text);

OR

int VehGrpIDtxtVehGroupID.Text = int.Parse(txtVehGroupID.Text);

文本框的Text属性是String类型,因此您必须在代码中执行转换。