Почему установка значения строки DataSet в Nothing инициализирует его как минимальное значение типа данных? - PullRequest
0 голосов
/ 02 декабря 2010

При установке столбца строки DataSet в Nothing, например row.Date = Nothing, почему он инициализирует его для типа данных minvalue? В этом случае дата устанавливается на 0000-01-01. Столбец настроен на разрешение нуля и т. Д., И если я вообще не установлю для строки ничего, он оставит столбец пустым. Так почему же Nothing действует так?

В C # я бы установил DbNull, наверное, но я немного зелен на VB.NET - как вы могли бы сказать. :)

Ответы [ 2 ]

1 голос
/ 02 декабря 2010

Hps правильно, что вы должны использовать DBNull.Value, чтобы присвоить значение NULL столбцу базы данных.

  row.Date = DBNull.Value

Причина, по которой вы устанавливаете значение по умолчанию, заключается в том, что ключевое слово Nothing в VB.NET сопоставимо с default(T) в C #, а не с ключевым словом C # null.

1 голос
/ 02 декабря 2010

Я думаю, вы сможете установить DBNull в VB.Net, например,

table.Rows(0)(0) = System.DBNull.Value

или row.Date = System.DBNull.Value

Для присвоения «Ничего» вам понадобится Nullable Type

...