none
consulta en LINQ RRS feed

  • Pregunta

  • Hola, estoy enlazando un DataGridView con una consulta en LINQ. 

     var x = from c in cont.Liquidaciones
                 join u in cont.Usuarios
                 on c.UsuarioId equals u.Id
                 where c.Anulada == 1
                 select new { Liquidación = c.IdLiquidacion, c.Fecha, c.FechaPago ,c.PeriodoId, Descripción = c.Descripcion, Liquidó = u.NombreUsuario, c.Anulada };
                 dgvLiquidaciones.DataSource = x;

    El campo Anulada, devuelve 0 o 1 (campo int). Quisiera saber si es posible hacer algun tipo de conversion para mostrar la palabra ANULADA o NO ANULADA. Intente una vez enlazada recorrer y cambiar el 0 por NO ENLAZADA, pero me devuelve un error por el tipo de datos de la columna (es int, e intento asignarle un string)

    Gracias !

    lunes, 21 de febrero de 2011 22:05

Respuestas

  • hola

    algo como esto

    var x = from c in cont.Liquidaciones
                 join u in cont.Usuarios
                 on c.UsuarioId equals u.Id
                 where c.Anulada == 1
                 select new
                 {
                    Liquidación = c.IdLiquidacion,
                    Fecha = c.Fecha,
                    FechaPago = c.FechaPago ,
                    PeriodoId = c.PeriodoId,
                    Descripción = c.Descripcion,
                    Liquidó = u.NombreUsuario,
                    Estado = c.Anulada == 0 ? "ANULADA" : "NO ANULADA"
                };

     

    no has probado

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta rlavisse martes, 22 de febrero de 2011 12:38
    martes, 22 de febrero de 2011 3:21

Todas las respuestas

  • hola

    algo como esto

    var x = from c in cont.Liquidaciones
                 join u in cont.Usuarios
                 on c.UsuarioId equals u.Id
                 where c.Anulada == 1
                 select new
                 {
                    Liquidación = c.IdLiquidacion,
                    Fecha = c.Fecha,
                    FechaPago = c.FechaPago ,
                    PeriodoId = c.PeriodoId,
                    Descripción = c.Descripcion,
                    Liquidó = u.NombreUsuario,
                    Estado = c.Anulada == 0 ? "ANULADA" : "NO ANULADA"
                };

     

    no has probado

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta rlavisse martes, 22 de febrero de 2011 12:38
    martes, 22 de febrero de 2011 3:21
  • Leandro, no habia probado eso (en realidad, ni siquiera tenia conocimiento de esa forma). Lo probe y anduvo perfecto. Muchisimas gracias nuevamente !
    martes, 22 de febrero de 2011 12:38
  • Leandro, lo que me has propuesto me ha servido. Ahora bien, es posible hacer algo similar teniendo 3 o mas estados?

    Supongamos que c.Anulada puede ser 0 (anulada), 1(no anulada), 2(cancelada), 3(activa) ...

     

    miércoles, 23 de febrero de 2011 13:36
  • Leandro, lo que me has propuesto me ha servido. Ahora bien, es posible hacer algo similar teniendo 3 o mas estados?

    Supongamos que c.Anulada puede ser 0 (anulada), 1(no anulada), 2(cancelada), 3(activa) ...

    miércoles, 23 de febrero de 2011 13:36