Инициализация наборов данных в VB.NET - PullRequest
2 голосов
/ 23 декабря 2008

Необходимо ли использовать ключевое слово "Nothing" для инициализации набора данных в VB.NET?

Ответы [ 2 ]

5 голосов
/ 23 декабря 2008

Что ж, если вы установите переменную в "Nothing", тогда вы вообще не инициализируете фактический объект DataSet - вы просто устанавливаете значение переменной в нулевую ссылку.

Для экземпляра или статической переменной Nothing будет значением по умолчанию. Для локальной переменной в C # фактически нет значения по умолчанию, так как компилятор не позволяет использовать переменную без ее определенного назначения - позволяет ли вам компилятор VB с этим справляться или нет, зависит от настроек компилятора. Однако, если действительно позволяет использовать неназначенную переменную, по умолчанию будет установлено значение Nothing.

3 голосов
/ 23 декабря 2008
Dim ds as New DataSet

(или, если он уже определен, ds = New DataSet) ... это все, что вам нужно для инициализации реального объекта DataSet. Именно использование ключевого слова «New» создает объект. Позже, после того, как в нем есть несколько DataTables, вы можете очистить их с помощью

ds.Tables.Clear

Как говорит Джон,

Dim ds as Dataset = nothing

... не создает экземпляр DataSet, инициализированный или иным образом. Все, что он делает, это определяет 'ds' как переменную, которая должна ссылаться на экземпляр класса DataSet, и явно устанавливает его так, чтобы он ничего не указывал.

Dim ds as DataSet

.. достиг бы того же. Опять же, позже, после того, как вы использовали свой DataSet,

ds = Nothing

... не реинициализирует DataSet, все, что он делает, это устанавливает вашу переменную 'ds', чтобы она больше ни на что не ссылалась.

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