作成日: 2020/08/19 最終更新日: 2020/08/19
文書種別
技術情報
詳細
データ型がStringであるセルに「System.DBNull」を設定し、この値を参照した場合、ComponentOne 2014J v1以前と2014J v2以降では、次のように結果が異なります。
■ComponentOne 2014J v1(4.6.20141.828)以前
・例外は発生しない
・参照したセルのデータ型は"System.String"
■ComponentOne 2014J v2(4.6.20142.842)以降
・'System.NullReferenceException' の例外が発生する
・参照したセルのデータ型は"System.DBNull"
この結果は、2014J v2で行われた以下の修正に起因します。
◇コンポーネントの更新履歴
https://www.grapecity.co.jp/developer/componentone/winforms/releasehistory#2014v2
FlexGrid for WinForms 2.6.20142.842/4.6.20142.842
不具合の修正
・DataType を String 型に設定した列に対して DBNull.Value 値を設定してもエラーにならない
本来、String型のセルに値としてDBNull.Valueを設定することはできません。DBNullがクラスであり、String型と互換がないためですが、過去のバージョンでは、DBNull.Valueを設定すると内部的にString型の空文字("")に変換されました。
しかし、2014J v2では、DBNull.Valueは、本来の動作であるnull(VBではNothing)として設定されよう修正されました。これにより、この値を参照すると例外が発生します。
■ComponentOne 2014J v1(4.6.20141.828)以前
・例外は発生しない
・参照したセルのデータ型は"System.String"
■ComponentOne 2014J v2(4.6.20142.842)以降
・'System.NullReferenceException' の例外が発生する
・参照したセルのデータ型は"System.DBNull"
この結果は、2014J v2で行われた以下の修正に起因します。
◇コンポーネントの更新履歴
https://www.grapecity.co.jp/developer/componentone/winforms/releasehistory#2014v2
FlexGrid for WinForms 2.6.20142.842/4.6.20142.842
不具合の修正
・DataType を String 型に設定した列に対して DBNull.Value 値を設定してもエラーにならない
本来、String型のセルに値としてDBNull.Valueを設定することはできません。DBNullがクラスであり、String型と互換がないためですが、過去のバージョンでは、DBNull.Valueを設定すると内部的にString型の空文字("")に変換されました。
しかし、2014J v2では、DBNull.Valueは、本来の動作であるnull(VBではNothing)として設定されよう修正されました。これにより、この値を参照すると例外が発生します。
旧文書番号
85908