noob_noob Ответов: 2

Правильный синтаксис, используемый для "Или " и" и " в VB.NET


Привет! Мне просто интересно, как использовать "или " и" и " в vb.net. В настоящее время я использую Visual Studio 2012. код ниже - это моя строка кода. Спасибо!

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

(Очередь.Этикетка 1.Текст <= 0 <= 0 & amp; CDbl(очередь.Label16.Текст) &ГТ; FrmNumApp.NumCon.Текст)

Patrice T

попробуйте прочитать документацию.

2 Ответов

Рейтинг:
5

Richard Deeming

Похоже, вы пытаетесь преобразовать код из языка на основе Си. VB.NET не использовать & как оператор" и"; он используется только для объединения строк.

Для булевых операторов используйте Атакже[^] и Иначе[^]. Для побитовых операторов используйте И[^] и Или[^].

(Технически, вы также можете использовать And и Or как логические операторы. Но по историческим причинам они не закорачиваются, а это значит, что вы должны избегать их, если у вас нет очень веской причины.)


noob_noob

Это определенно работает! Спасибо!

Рейтинг:
16

OriginalGriff

Начните с разработки именно того, что вы пытаетесь сделать здесь: этот код не имеет большого смысла.
Что у вас на этикетке? Если это число, то разберите его на число, прежде чем начинать сравнивать, иначе этот бит, вероятно, не будет делать то, что вы хотите:

Queue.Label1.Text <= 0

Тогда с чем вы пытаетесь сравнить результат? Результатом сравнения "<=" является логическое значение, поэтому true ненулевой и положительный, или false- Это бессмысленное сравнение.
А затем вы преобразуете другую метку в двойную и сравниваете ее со строкой, которая может содержать что угодно!

Используйте int.Метод tryparse и двойной.Попробуйте преобразовать все ваши текстовые значения в допустимые числа, а затем сравнить их с помощью переменных, которые называются так, чтобы отразить то, что они содержат:
If (inUsersQueue <= 0 & inMessagesQueue > minProcessLimit)

Это гораздо более читабельно!


Richard Deeming

Вот еще не собираюсь делать правильные вещи - VB.NET'ы & оператор используется только для конкатенации строк. :)

OriginalGriff

Мне явно нужно было больше кофеина...: O