Подтвердить что ты не робот

Оператор '==' не может быть применен к операнду типа "группа методов"

У меня есть следующая функция, которая возвращает 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");
   }
}

Как я могу это исправить?

4b9b3361

Ответ 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 не смог найти свойство и предполагал, что я пытался ссылаться на метод расширения.

Как только я скомпилирован, ошибка очистится.