maverick1991 Ответов: 4

Если “не X-это ничто, то " замена в vb.net. Ищете лучший способ представить то же самое состояние


Когда мы хотим проверить not null in vb.net мы используем "если не X-это ничто, то", но это очень расплывчато для чтения и понимания, особенно если код сложный или большой. Есть ли какое-либо условие, с помощью которого мы можем проверить то же самое условие и легко прочитать или понять?

Что я уже пробовал:

чтение vb.net статьи. Последовал за некоторыми статьями о stackoverflow и codeproject, но безуспешно.

Maciej Los

Итак, проверьте это: Ничего (Visual Basic) | Microsoft Docs[^]

4 Ответов

Рейтинг:
2

CPallini

Если это не слишком сильно влияет на производительность кода, то поместите условие ("уродливый код") в Shared метод и дать ему привлекательное имя, как, например,, isAVeryGoodAndAliveReference.


Рейтинг:
2

Graeme_Grant

Вот еще один вариант использования методов расширения:

Imports System.Runtime.CompilerServices

Module Module1

    Private FooBar As Foo = Nothing

    Sub Main()

        If (FooBar.IsNotNull) Then
            ' do something
        End If

    End Sub

End Module

Class Foo
    Public Property Bar As String
End Class

Module NullChecks

    <Extension>
    Function IsNull(Of T As Class)(ByVal obj As T) As Boolean
        Return obj Is Nothing
    End Function

    <Extension>
    Function IsNotNull(Of T As Class)(ByVal obj As T) As Boolean
        Return obj IsNot Nothing
    End Function

End Module


Рейтинг:
1

Ralf Meier

Вы также можете написать :

IF x isnot Nothing then ...
но, судя по содержанию, это одно и то же. Но я не вижу, где это "очень расплывчато"... это способ сделать это ...


Рейтинг:
0

ledtech3

Если x = ничего, то
"Сделайте что-нибудь (бросьте ошибку, обработайте ее) или проигнорируйте
еще
"Делай то, что он должен делать, если это что-то
За endif


Возможно, не самый лучший способ, но немного более читабельный.
Я использую что-то подобное для тех случаев, когда пользователь не вводил данные в текстовое поле.


Maciej Los

Неправильный подход. Регистрация документация:
MSDN писал:"При проверке того, является ли ссылочная переменная (или тип значения nullable) нулевой, не используйте = Nothing или < & gt; Nothing. Всегда использование-это ничто или не есть ничто."

ledtech3

Спасибо за рекомендацию.