Я считаю, что лучше использовать нулевое значение, а не нулевое значение БД.
Причина в том, что, как вы сказали, вы отделяете себя от мира БД.
Обычно рекомендуется проверять ссылочные типы, чтобы убедиться, что они в любом случае не равны нулю. Вы будете проверять наличие пустых значений, отличных от данных БД, и я считаю, что лучше всего поддерживать согласованность во всей системе и использовать нулевое значение, а не DBNull
.
В долгосрочной перспективе архитектурно я считаю, что это лучшее решение.