none
Error en C# operadores logicos RRS feed

  • Pregunta

  • Hola amigos estoy haciendo una funcion de validacion de controles en C# pero me sale un error:

    Error 1 La parte izquierda de una asignación debe ser una variable, una propiedad o un indizador 

    if (TxtCliente.Text != "" & OptB.Checked = true | OptF.Checked = true)
          {
            d = 1;
          }
    

    Funcion en VB.Net

    If Me.TxtCliente.Text <> "" And Me.OptB.Checked = True Or Me.OptF.Checked = True Then
          d = 1  
        End If
    
    viernes, 6 de agosto de 2010 0:13

Respuestas

  • hola

    ademas del comentario de Lentucky que es correcto, puedo comentarte que en c# y en vb.net  tambien sucede es que no necesitas comparar el Checked a true, esta propiedad ya devuelve un valor del tipo bool, puede ponerlo directo

    otra buena practica seria agrupar los operadores logico, usando aprentesis, para determinar como estos actuaran

    algo como ser:

    if ((!string.IsNullOrEmpty(TxtCliente.Text) && OptB.Checked)  || OptF.Checked)


    te dejo un link con al lista de operadores


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Miconsa viernes, 6 de agosto de 2010 3:18
    viernes, 6 de agosto de 2010 2:42
  • Hola, Miconsa. Te cuento que en C# el operador equivalente al "=" de VB es "==", ése es el error.

     

    Saludos

    • Propuesto como respuesta Lentucky viernes, 6 de agosto de 2010 1:09
    • Marcado como respuesta Miconsa viernes, 6 de agosto de 2010 3:18
    viernes, 6 de agosto de 2010 0:54

Todas las respuestas

  • Hola, Miconsa. Te cuento que en C# el operador equivalente al "=" de VB es "==", ése es el error.

     

    Saludos

    • Propuesto como respuesta Lentucky viernes, 6 de agosto de 2010 1:09
    • Marcado como respuesta Miconsa viernes, 6 de agosto de 2010 3:18
    viernes, 6 de agosto de 2010 0:54
  • hola

    ademas del comentario de Lentucky que es correcto, puedo comentarte que en c# y en vb.net  tambien sucede es que no necesitas comparar el Checked a true, esta propiedad ya devuelve un valor del tipo bool, puede ponerlo directo

    otra buena practica seria agrupar los operadores logico, usando aprentesis, para determinar como estos actuaran

    algo como ser:

    if ((!string.IsNullOrEmpty(TxtCliente.Text) && OptB.Checked)  || OptF.Checked)


    te dejo un link con al lista de operadores


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Miconsa viernes, 6 de agosto de 2010 3:18
    viernes, 6 de agosto de 2010 2:42