Доступ к базе данных C #: DBNull против нуля

У нас есть собственный ORM, который мы здесь используем, и мы предоставляем строго типизированные оболочки для всех наших таблиц БД. Мы также разрешаем выполнение специализированного SQL-кода со слабым типом, но эти запросы по-прежнему проходят через тот же класс для получения значений из устройства чтения данных.

При настройке этого класса для работы с Oracle мы столкнулись с интересным вопросом. Лучше использовать DBNull.Value или ноль? Есть ли какие-либо преимущества использования DBNull.Value? Кажется более «правильным» использовать ноль, так как мы отделили себя от мира БД, но есть некоторые последствия (вы не можете просто слепоToString() например, когда значение равно нулю), так что это определенно то, что нам нужно принять осознанное решение.

Ответы на вопрос(4)

Ваш ответ на вопрос