Advertencia del compilador (nivel 3) CS0665

Actualización: noviembre 2007

Mensaje de error

La asignación en la expresión condicional siempre es constante; ¿pretendía utilizar == en lugar de = ?
Assignment in conditional expression is always constant; did you mean to use == instead of = ?

Una expresión condicional utiliza el operador = en lugar del operador ==.

El código siguiente genera el error CS0665:

// CS0665.cs
// compile with: /W:3
class Test
{
   public static void Main()
   {
      bool i = false;

      if (i = true)   // CS0665
      // try the following line instead
      // if (i == true)
      {
      }

      System.Console.WriteLine(i);
   }
}