none
negar un campo en una consulta linq RRS feed

  • Pregunta

  • hola buenos dias

    programadores estoy relalzando una apliacion de venta ocupo visual studio 2015 y sql expres 2014 tengo consulta linq

    de una vista que trae los productos perfecto

    pero ahora necesito que no trae los productos que tenga el campo isexonerado = true no lo traiga

    esta mi consulta que funciona pero necesito modificarla

                            FrmMessage FMensaje = new FrmMessage("Pago registrado satisfactoriamente");
                            FMensaje.ShowDialog();
                            FMensaje = new FrmMessage("Imprimiendo....");
                            FMensaje.ShowDialog();
    
                            List<Vi_Ventas_Detalle> ListaDetalleVenta = new List<Vi_Ventas_Detalle>();
                            ListaDetalleVenta = objVenta.GetByID(newCaja.IdTipoDocumento, newCaja.NumDocumento);

    public List<Vi_Ventas_Detalle> GetByID(int IdTipoDocumento,int NumeroDocumento)
            {
                DAL.IRepository repository = new Modelo.Repository();
                try
                {
                    var ventas = repository.FindEntitySet<Vi_Ventas_Detalle>(x => x.IdTipoDocumento==IdTipoDocumento && x.NumDocumento ==NumeroDocumento).ToList();
    
                   
                    return ventas;
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
            }

    lunes, 18 de febrero de 2019 14:09

Respuestas

  • hola

    >>pero ahora necesito que no trae los productos que tenga el campo isexonerado = true no lo traiga

    var ventas = repository.FindEntitySet<Vi_Ventas_Detalle>(x => x.IdTipoDocumento==IdTipoDocumento && x.NumDocumento ==NumeroDocumento

    && !x.isexonerado).ToList();

    puedes negar un campo usando el "!" delante, aplica porque el campo es bool, no hace falta comparar con true/false

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta djnilo lunes, 18 de febrero de 2019 14:50
    lunes, 18 de febrero de 2019 14:16

Todas las respuestas

  • hola

    >>pero ahora necesito que no trae los productos que tenga el campo isexonerado = true no lo traiga

    var ventas = repository.FindEntitySet<Vi_Ventas_Detalle>(x => x.IdTipoDocumento==IdTipoDocumento && x.NumDocumento ==NumeroDocumento

    && !x.isexonerado).ToList();

    puedes negar un campo usando el "!" delante, aplica porque el campo es bool, no hace falta comparar con true/false

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta djnilo lunes, 18 de febrero de 2019 14:50
    lunes, 18 de febrero de 2019 14:16
  • gracias por responder rapidamente leandro tutinii

    pero me arroja un error tengo que declarar ese campo

     public List<Vi_Ventas_Detalle> GetByID(int IdTipoDocumento,int NumeroDocumento)
            {
                DAL.IRepository repository = new Modelo.Repository();
                try
                {
                    var ventas = repository.FindEntitySet<Vi_Ventas_Detalle>(x => x.IdTipoDocumento==IdTipoDocumento && x.NumDocumento ==NumeroDocumento && !x.isexonerado).ToList();
    
                 
                    return ventas;
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
            }


    • Editado djnilo lunes, 18 de febrero de 2019 14:38
    lunes, 18 de febrero de 2019 14:37
  • Era un ejemplo, se supone que debes poner la propiedad correcta mapeada de la entidad

    No se si "isexonerado" existe en Vi_Ventas_Detalle, no deberias copiar y pegar

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 18 de febrero de 2019 14:43
  • disculpa tienes razon muchas gracias sirvio 
    lunes, 18 de febrero de 2019 14:49