Оператор '==' не может быть применен к операнду типа "группа методов"
У меня есть следующая функция, которая возвращает true
или false
:
public bool ValidateURL()
{
if (string.IsNullOrEmpty(txt22.Text) & string.IsNullOrEmpty(txt33.Text))
{
return false;
}
else
{
return true;
}
}
Теперь следующий код находится на кнопке, но я получаю ошибку "Оператор не может быть применен":
private void btn33_Click(object sender, EventArgs e)
{
if (ValidateURL==true)
{
MessageBox.Show("Enter data");
}
}
Как я могу это исправить?
Ответы
Ответ 1
private void btn33_Click(object sender, EventArgs e)
{
if (ValidateURL())
{
MessageBox.Show("Enter data");
}
}
EDIT:
Как отметил Коди Грей, нет никакой реальной точки в сравнении "истина" и значения, возвращаемого ValidateURL() (ValidateURL() == true
). Никто на самом деле не делает этого, и он просто делает код длиннее. Когда я ответил на вопрос, я просто скопировал, вставил и исправил проблему с ОП, и именно поэтому сравнение было там. Несмотря на то, что он абсолютно важен, он действительно не нужен. +1 Коди.
Ответ 2
Измените его на:
if (ValidateURL())
Ответ 3
Вам нужны скобки. Должно быть ValidateURL() == true
Ответ 4
Измените
if (ValidateURL==true)
to
if (ValidateURL() ==true)
Ответ 5
Вы хотите
if (ValidateURL() == true)
Ответ 6
Поиск этой ошибки в Google привел меня сюда. В моем случае это произошло потому, что я ссылался на новое свойство на странице ASP.NET MVC Razor. Свойство было добавлено к моей модели, но я забыл скомпилировать проект. Компилятор Razor не смог найти свойство и предполагал, что я пытался ссылаться на метод расширения.
Как только я скомпилирован, ошибка очистится.