qiuzhilv007 发表于 2015-10-14 15:53:00

InputManCellBase DBNull

绑定DataSource的multirow在DB中取得值时,如DB中对应的项目清空会把cell的值赋为DBNull
这样在用convert cint parse之类转换时会出异常。有何设置或方法能解决这个问题,把DBNull转成Nothing

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)。

qiuzhilv007 发表于 2015-10-15 12:49:00

谢谢回复。
RadioGroupCell发现用FormattedValue取得的值是Nothing,Value取得的值是DBNull。是否其他Cell也是这样,那都用FormattedValue取值是否就避免了DBNull的问题了。

Carl 发表于 2015-10-15 13:39:00

是的。Cell上的Value可以是任何类型的数据,但是FormattedValue一定是这个Cell支持的数据类型,否则为Null(Nothing)。

Alice 发表于 2015-10-28 16:47:00

回复 4楼qiuzhilv007的帖子

为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢      http://gcdn.gcpowertools.com.cn/attachment.aspx?attachmentid=10062

您可以关注我们的微信服务号(微信号:GrapeCityDT),帖子有回复时可即时收到提醒,便于您第一时间查看,尽快解决技术问题。关注即可获得300金币用于兑换礼品。
页: [1]
查看完整版本: InputManCellBase DBNull