>>748
object型をstringやらintegerにキャストするとき、DBNullだったら、例外がでるので、
そういうのはなくても大丈夫です。

if reader("・・") <> DBNull.Value then 
  aa = DirectCast(reader("・・"),・・・)
else
  なんかエラー処理
end if

みたいに一行ずつ判定するか、

try
  aa = DirectCast(reader("・・"),・・・)
  bb = DirectCast(reader("・・"),・・・)
  :
catch ex as キャストの例外
  :
End Try

みたいにまとめてキャッチするかってことです。