日期:2014-05-17  浏览次数:20965 次

对象的类型必须是 Int32。的问题
 dgvGoodsInfo.Sort(dgvGoodsInfo.Columns["m_ColumntG_NO"], ListSortDirection.Ascending);
这句代码是我想对gridView进行排序,我对gridView会进行增加,修改,和删除的操作,数据中有一个商品序号,是自增列,删除掉数据后,都会对商品序号重排,我反复操作的时候,运行到 dgvGoodsInfo.Sort(dgvGoodsInfo.Columns["m_ColumntG_NO"], ListSortDirection.Ascending);
就会提示“对象的类型必须是 Int32。”,我不知道是什么原因?
有的时候就可以正常运行,有的时候就会提示这个异常信息,还望高手帮忙解释一下?

------解决方案--------------------
帮顶一个
------解决方案--------------------
会不会数据集中有为null的项或值为null.
------解决方案--------------------
引用:
会不会数据集中有为null的项或值为null.

应该是这个原因了
------解决方案--------------------
我遇到过,可能是你其中某列可为空值,该列在数据库中没有,而是在select语句中以select 'a' as  column ,所以在增加或修改时,就会报这样的错误 ,将select 'a' as  columnname 改为select convert(varchar(50),'a') as  column 即可,这样该列就可以添加字符串了,不知道你的情况是否是这样子的
------解决方案--------------------
引用:
会不会数据集中有为null的项或值为null.


我也觉得这个嫌疑比较大
------解决方案--------------------
你试着调用对象的GetType()查看下数据类型