nullとDBNullの違いと注意についてです。
オブジェクト指向の言語では、nullはオブジェクトへの参照がないことを意味します。
それに対してDBNullは別物で、そもそも存在しない値を表しています。
上記の違いを理解せずに「if ( a == null ) {}」とかnullチェックしてしまうと当然エラーが発生してしまいます。
それを回避する方法は色々とありますので、状況によって調べて使い分けてみてください。
(例)
・DBNull.Valueと比較する。
・Object型のクラスや変数に値をセットする。
・DataRow.IsNullメソッドを使用する。
・DataRow.Fieldを利用する。
以上、nullとDBNullの違いに注意しようというお話でした。