none
Ajuda com where em JOIN - LAMBDA RRS feed

  • Pergunta

  • Pessoal boa tarde, 


    Eu preciso colocar um where no último Join(dataContext.Interacaos) nesta minha expressão lambda, mas não estou conseguindo.

    Esta ultima tabela dataContext.Interacaos, possui um relacionamento de 1 para N, ou seja pode ter N registros então eu preciso pegar somente o primeiro ou nenhum caso n tenha nada. Sabem como posso colocar?

    List<ChamadoRelatorio> chamados = dataContext.TempoProcessos
                    .Where(t => t.DataInicio > dataInicial && t.DataInicio < dataFinal && t.Processo.Equals(1))
                    .Join(dataContext.Chamados, t => t.IdAtendimento, c => c.IdAtendimento, (t, c) => new { t, c })
                    .Join(dataContext.Interacaos, tc => tc.c.Id, i => i.IdChamado, (tc, i)
                    => new ChamadoRelatorio
                    {
                        Id = tc.c.Id,
                        DataAbertura = tc.t.DataInicio,
                        GrupoAtendimento = tc.c.GrupoOrigem.Nome,
                        IdGrupoAtendimento = tc.c.GrupoOrigem.Id,
                        IdCliente = tc.c.IdCliente,
                        IdAtendimento = tc.c.IdAtendimento,
                        IdUsuario = tc.t.IdUsuario,
                        DataPrimeiraInteracao = i.Data
                    }).ToList();

                return chamados;

    sexta-feira, 29 de junho de 2012 19:08

Respostas

  • Olá, tente colocar ao final de .ToList() o método First(), talvez te ajude.

    Abraços.


    Se a resposta for útil, favor votar como útil para que ajude outros usuários com a mesma dúvida | Dicas e artigos sobre .NET em http://programandodotnet.wordpress.com e http://www.devmedia.com.br/wellingtonbalbo | Siga-me no Twitter: @wellingtonbalbo

    • Sugerido como Resposta Paulo César Viana domingo, 1 de julho de 2012 13:10
    • Marcado como Resposta Rodrigo Epic sexta-feira, 6 de julho de 2012 22:42
    domingo, 1 de julho de 2012 02:45
  • Eu tbm recomendo usar o First, apesar de ter outras opções como FirstOrDefault,  Take...

    Paulo César Viana
    MCC,MCP,MCTS
    --

    Marque as respostas e contribua para uma melhora no fórum.

    • Marcado como Resposta Rodrigo Epic sexta-feira, 6 de julho de 2012 22:42
    domingo, 1 de julho de 2012 13:12

Todas as Respostas

  • Olá, tente colocar ao final de .ToList() o método First(), talvez te ajude.

    Abraços.


    Se a resposta for útil, favor votar como útil para que ajude outros usuários com a mesma dúvida | Dicas e artigos sobre .NET em http://programandodotnet.wordpress.com e http://www.devmedia.com.br/wellingtonbalbo | Siga-me no Twitter: @wellingtonbalbo

    • Sugerido como Resposta Paulo César Viana domingo, 1 de julho de 2012 13:10
    • Marcado como Resposta Rodrigo Epic sexta-feira, 6 de julho de 2012 22:42
    domingo, 1 de julho de 2012 02:45
  • Eu tbm recomendo usar o First, apesar de ter outras opções como FirstOrDefault,  Take...

    Paulo César Viana
    MCC,MCP,MCTS
    --

    Marque as respostas e contribua para uma melhora no fórum.

    • Marcado como Resposta Rodrigo Epic sexta-feira, 6 de julho de 2012 22:42
    domingo, 1 de julho de 2012 13:12
  • Obrigado 
    Wellington e Paulo.

    Fiz exatamente isto, vlw :D

    sexta-feira, 6 de julho de 2012 22:43
  •   Wellington, boa noite!

    Segue abaixo um exemplo com linq, mas se você estiver usando EF e suas tabelas estão relacionadas não precisa fazer o join porque o entity já gerencia isso!

      var qry = (from table1 in dataContext.TempoProcessos
      join table2 in dataContext.NomeTabebela on table1.Pk equals table2.Fk
      join table3 in dataContext.NomeTabebela on table1.Pk equals table3.Fk
      where table1.Seucampo.Equals(filtro)
      select new
      {
      table1.seucampo,

      table2.seucampo,

      table3.seucampo
      });

        return qry .ToList();

    Caso não consiga chame skype.

    Skype na assinatura

         

    Att,
    André Rodrigues Côrte
    Analista de Sistema
    Côrte Solutions
    Grupo de Estudo C# Facebook
    Canal de Estudo Youtube

    quarta-feira, 1 de abril de 2015 00:15