找回密码
 立即注册

QQ登录

只需一步,快速开始

qiuzhilv007

中级会员

34

主题

85

帖子

620

积分

中级会员

积分
620

活字格认证微信认证勋章

qiuzhilv007
中级会员   /  发表于:2015-10-14 15:52  /   查看:6712  /  回复:5
绑定DataSource的multirow在DB中取得值时,如DB中对应的项目清空会把cell的值赋为DBNull
这样在用convert cint parse之类转换时会出异常。有何设置或方法能解决这个问题,把DBNull转成Nothing

5 个回复

倒序浏览
qiuzhilv007
中级会员   /  发表于:2015-10-14 16:55:00
沙发
在Sheet4.0中,DBNull的数据放到绑定的单元格后变为Nothing,现不知哪里处理了还是Sheet4.0自带的功能,或者DB可以设置将DBNull转为Nothing
回复 使用道具 举报
Carl
版主   /  发表于:2015-10-14 17:50:00
板凳
DBNull和Null(Nothing)是两种不同的情况,DBNull表示数据库中不存在,Null(Nothing)表示数据库中就是存了一个空数据。
Sheet4.0 没有支持DBNull,所以拿到的Cell Value总是Nothing。
MultiRow现在做了支持。如果你是用Cell的Value在做检查,那么数据绑定时要多检查一下DBNull。
这个值是从绑定的ADO.NET的DataTable中直接获取的,MultiRow没有办法直接把它转成 Null(Nothing)。

评分

参与人数 1金币 +999 满意度 +5 收起 理由
Alice + 999 + 5 xiexie

查看全部评分

愿 Engine 归于沉寂,Timer 停止运动,Message Queue 不再流淌,Data Source 为我掌握
回复 使用道具 举报
qiuzhilv007
中级会员   /  发表于:2015-10-15 12:49:00
地板
谢谢回复。
RadioGroupCell发现用FormattedValue取得的值是Nothing,Value取得的值是DBNull。是否其他Cell也是这样,那都用FormattedValue取值是否就避免了DBNull的问题了。
回复 使用道具 举报
Carl
版主   /  发表于:2015-10-15 13:39:00
5#
是的。Cell上的Value可以是任何类型的数据,但是FormattedValue一定是这个Cell支持的数据类型,否则为Null(Nothing)。
愿 Engine 归于沉寂,Timer 停止运动,Message Queue 不再流淌,Data Source 为我掌握
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-10-28 16:47:00
6#
回复 4楼qiuzhilv007的帖子

为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢        

您可以关注我们的微信服务号(微信号:GrapeCityDT),帖子有回复时可即时收到提醒,便于您第一时间查看,尽快解决技术问题。关注即可获得300金币用于兑换礼品。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部