Набор данных C # и значения DbNull - PullRequest
2 голосов
/ 17 июня 2010

У меня общий вопрос. Допустим, у меня есть БД SQL Server 2008, и в ней есть несколько обнуляемых столбцов.Некоторые из них являются нулевыми, а некоторые нет.

Затем я запрашиваю в БД DataRow в C #.

Какое значение будут иметь эти нулевые поля в объекте DataRow?Я вижу, что они имеют C # "нулевые" значения, но кто-то здесь сказал, что DbNull! = C # null ....

Пожалуйста, объясните ... спасибо.

Ответы [ 2 ]

4 голосов
/ 17 июня 2010

DBNull.Value, что не совпадает с null.

DBNull.Value Поле (Система)

2 голосов
/ 17 июня 2010

С нетипизированными наборами данных (в DataRow) вы можете выполнить тестирование следующим образом: DbNull.Value.Equals(dataRow["column"])

С типизированными наборами данных для столбцов с пустыми значениями генерируется IsNull сгенерированных методов, например, myTypedDataRow.IsMyColumnNull(), которые по умолчанию выследует проверить, прежде чем пытаться получить доступ к фактическому значению myTypedDataRow.MyColumn, потому что, если оно имеет нулевое значение, оно выдаст исключение.Это поведение можно изменить, установив свойство NullValue столбца в DataSet Designer.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...