Я считаю, что Патрик Стил лучше всего ответил на этот вопрос в своем блоге: Как избежать IsNothing ()
Я не копировал ни одного из его ответов здесь, чтобы гарантировать, что Патрик Стил получил кредит за свой пост. Но я думаю, что если вы пытаетесь решить, использовать ли «Ничего» или «Ничего», вам следует прочитать его пост. Я думаю, вы согласитесь, что «Ничто» - лучший выбор.
Редактировать - здесь голосуйте за комментарий к кофе
Частичное содержание статьи: После просмотра большего количества кода я обнаружил еще одну причину, по которой вам следует избегать этого: он принимает типы значений! Очевидно, что поскольку IsNothing () является функцией, которая принимает «объект», вы можете передать ему все, что захотите. Если это тип значения, .NET упаковывает его в объект и передает его в IsNothing, которое всегда возвращает false для упакованного значения! Компилятор VB.NET проверит синтаксис стиля «Ничего» и не скомпилируется, если вы попытаетесь выполнить «Ничего» для типа значения. Но функция IsNothing () компилируется без нареканий. -PSteele - VoteCoffee