一直以来,对于数据转换,经常用的就是Convert.ToInt32  和int.Parse 。

 我数据库里这个字段是  int  类型。  查询时因为要读取,

 model.ReachT = int.Parse(ds.Tables[0].Rows[0]["ReachT"].ToString());   。

用int.parse没有出错。但是用

 model.ReachT = Convert.Toint32(ds.Tables[0].Rows[0]["ReachT"].ToString());就出错了。

 调试出model.ReachT=0.但是我数据库里这个字段没有值。也就是说。通过convert.toint32就是被强制赋值为0。

所以一直报错说输入字符串不正确

 

最后这个结果就是我自己设计表 不规范,既然是 int  类型,默认的应该是0。这样就不会报错了。程序员,要仔细。

 

 

posted on 2010-06-04 16:54  挑战自我  阅读(113)  评论(0编辑  收藏  举报