Я немного неясен об условном и логическом || oprators. Ну, глядя на то, что я только что написал, позвольте мне повторить это: мой код не делает того, что он должен делать, основываясь на различиях между условным и логическим ИЛИ.Логическое ИЛИ, похоже, действует как условное ИЛИ
У меня есть текстовое поле в качестве поля даты, которое по умолчанию имеет его текстовое свойство, равное «мм/гггг». Мой валидатор оценивает значение true для этого условия и для пустого значения (как и для двух котировок/""/меток). Так ведь это я проверяю значение с этим:
if (tbEndDateMo.Text != "mm/yyyy" | tbEndDateMo.Text != "" | tbEndDateMo.Text != string.Empty)
Если значение «мм/гггг», она проходит внутри ПЧ и то же, когда значение пусто. Глядя на это Microsoft reference, я понимаю разницу, и я думал, что я написал код, основанный на этом, но он не работает так, как я этого хочу. Если текстовое поле оценивается как «mm/yyyy» или пустое (или пустое), пропустите IF. Что я делаю не так?
Спасибо,
Risho
Вы звучите так, как хотите, а не | –
'' ', в этом контексте не является побитовым ИЛИ, это просто не короткое замыкание ИЛИ. Нет причин, учитывая ваш код, чтобы избежать короткого замыкания. – Servy
@ AnthonyPegram Ну, вероятно, '&&', а не '&'. – Servy