Проверьте, не является ли Newtonsoft.Json.Linq.JToken ничем

Согласно отладчику, у меня есть переменная с именем myCancelled типа Newtonsoft.Json.Linq.Jtoken со значением Nothing. Я также применил его к Object, и все эти условия не выполняются. Мой вопрос просто: как мне проверить, является ли оно Nothing/Null/False/Empty?

Вот что я пробовал. Ни одно из этих условий не оценивается как истинное:

            If myCancelled Is Nothing Then
                'Doesn't come here
            End If
            If myCancelled = DBNull.Value.ToString Then
                'Doesn't come here
            End If
            If myCancelled = "null" Then
                'Doesn't come here
            End If
            If IsDBNull(myCancelled) Then
                'Doesn't come here
            End If
            If myCancelled Is DBNull.Value Then
                'Doesn't come here
            End If
            If String.IsNullOrEmpty(myCancelled) = True Then
                'Doesn't come here
            End If
            If myCancelled.ToString = "Nothing" Then
                'Runtime error
            End If
            If myCancelled = DBNull.Value Then
                'Runtime error
            End If
            If IsNothing(myCancelled) Then
                'Doesn't come here
            End If

Я новичок в VB.net, поэтому любые указатели приветствуются.

РЕДАКТИРОВАТЬ

Это сработало, но пропускает ложные срабатывания (когда myCancelled имеет значение, условное значение истинно)

            If Not myCancelled Then
                ' It comes here
            End If

person chakeda    schedule 17.12.2015    source источник


Ответы (1)


Вот что сработало. VB сложно освоить, если вы привыкли к Java, C# и т. д.

If Not myCancelled.Equals("Y") Then
    ' It finally came here
End If
person chakeda    schedule 23.12.2015
comment
Любая идея, почему Y была правильной проверкой равенства, когда фактическим значением является Nothing? - person ErikBrandsma; 29.11.2017
comment
Возможно, метод Equals() обрабатывает Nothings так, как я хотел. Оглядываясь назад, это могло быть лучшим решением: stackoverflow.com/questions/378225/ - person chakeda; 29.11.2017