userId =Convert.ToInt32(ds.Tables["HasUser"].Columns["userId"]);报错

当从一个数字执行强制转换时,值必须是一个小于无限大的数字... 当从一个数字执行强制转换时,值必须是一个小于无限大的数字 展开
 我来答
帐号已注销
2013-03-26 · TA获得超过2184个赞
知道小有建树答主
回答量:631
采纳率:100%
帮助的人:645万
展开全部
数据库某条记录的userid是空值。当从数据库中读取的时候,空值转过来的结果null。所以当你转换为int32的时候就出错。
可以在之前加个判断,如果为空值,则数据为0,或者直接为空,否则为实际值。
出现这个问题,说明你的数据库设计的不严谨,进行数据库设提交回答计时,应将该字段设为不能为空。
更多追问追答
追问
我的数据库列userId是有值得呀 类型是int 值为1003
追答
改为 userId =Convert.ToInt32(ds.Tables["HasUser"].Columns["userId"].Tostring());试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式