Концептуально сравнение с DBNull.Value
является правильным.
Вы также можете использовать:
if (Convert.IsDBNull(dr[0]))
{
}
Вы также можете использовать, чем я не фанат, просто потому, что это сравнение типов, а не сравнение значений:
if (dr[0] is DBNull)
{
}