none
Como fazer um Sum() nesse LINQ RRS feed

  • Pergunta

  • Olá pessoal novamente aqui com problemas :)

    Estou fazendo uma consulta dessa forma e queria saber como faço para fazer um sum em um dos campos.

    <>

    public IQueryable GetDespachante(int empresa, int despachante)

            {

                return from e in model.receber

                       where e.id_despachante == despachante && e.id_empresa == empresa && e.status.Equals("A")

                       select new

                       {

                           Codigo      = e.id,

                           Documento   = e.documento,

                           Despachante = e.despachantes.nome,

                           Total       = e.valor,

                           Recebido    = e.vlr_recebido,

                           AReceber    = e.valor - e.vlr_recebido,

                           Emissao     = e.dt_cadastro

                       };

            }

     

    ai passo o retorno para um gridview 

    ReceberBo receberbo = new ReceberBo();

                IQueryable filtro   = receberbo.GetDespachante(idempresa, codigo);

                grvReceber.DataSource = receberbo.Find(n => n.id_despachante == codigo); 

                grvReceber.DataBind();

    </>

    até aqui tudo bem, ai minha dúvida é, quero pegar um campo chamado total que esta no filtro e fazer um sum() dele e jogar para uma variavel, como faço isso?

    quarta-feira, 18 de janeiro de 2012 10:32

Respostas

  • Retorna uma lista do tipo que você está consultando, ou cria um segundo objeto:

     

    public List<Receber> GetDespachante(int empresa, int despachante)
    
            {
    
                return from e in model.receber
    
                       where e.id_despachante == despachante && e.id_empresa == empresa && e.status.Equals("A")
    
                       select new Receber()
    
                       {
    
                           Codigo      = e.id,
    
                           Documento   = e.documento,
    
                           Despachante = e.despachantes.nome,
    
                           Total       = e.valor,
    
                           Recebido    = e.vlr_recebido,
    
                           AReceber    = e.valor - e.vlr_recebido,
    
                           Emissao     = e.dt_cadastro
    
                       };
    
            }
    
    
    class Receber
    {
    
        public int Codigo{get;set;}
    
        public String Documento{get;set;}
    
        public String Despachante{get;set;}
    
        public Decimal Total{get;set;}
    
        public Decimal Recebido{get;set;}
    
        public Decimal AReceber{get;set;}
    
        public DateTime Emissao{get;set;}
    
    }
    



    Marcilio Prog. Computadores Se foi útil, marque.
    • Marcado como Resposta Thiago_Porto quarta-feira, 18 de janeiro de 2012 15:37
    quarta-feira, 18 de janeiro de 2012 12:47

Todas as Respostas