Fazer busca em lista

30/08/2012

Tenho 3 listas. Rotina, Agenda e Tarefas.

Rotina possui Agenda e Tarefas. No meu método de retorno, eu trago todas as Rotinas cadastradas e agora preciso fazer com pelo IdRotina, eu busco o agendamento e as tarefas(Não nível banco, mas nível aplicação - C#). Assim eu trago todas as rotinas:

List<Entity.Rotina> listaRotina = new List<Entity.Rotina>();

listaRotina = Repository.Rotina.RetornarTodos();

Então, tendo todos os Id's de Rotina, preciso agora buscar os agendamentos e também executar as tarefas agendadas. A dúvida seria pegar os agendamentos e tarefas apartir de rotina, mas não gostaria de usar o Foreach e nem o For, mas sim, uma expressão Lambda, Linq ou algo pareceido, para evitar de sempre que for executar, não ficar num loop, apesar de sempre vai haver um loop implícito, mas para buscar. Uma rotina possui 1 ou vários agendamentos e idem para Tarefas. tarefa e Agendamento recem FK IdRotina. A execução das tarefas, obedecem a uma ordem em um campo chamado OrdemExecucao. To apanhando para fazer isso, mas em buscar as tarefas e agendamentos.

Pjava

Respostas

30/08/2012

Joel Rodrigues

Um objeto Rotina possui uma lista de objetos Agendamento e Tarefa?

Você pode usar a cláusula Where em uma instrução LINQ com expressões Lambda e ter acesso a essas listas do objeto selecionado. Por exemplo:
listaRotinas.Where(r => r.IdRotina.Equals(123)).First().Tarefas;
listaRotinas.Where(r => r.IdRotina.Equals(123)).First().Agendamentos;


Sacou a ideia?
Responder Citar

30/08/2012

Pjava

Desculpe pela minha ignorancia, mas quando eu chamo Equals(), vc colocou um valor hipotético lá, mas com o que eu comparo. E o tarefas e agendamentos, o qual eu coloquei minha classe lá, dá erro.
Responder Citar

30/08/2012

Joel Rodrigues

Novamente vou lhe pedir para especificar qual erro ocorre, para facilitar a solução. Com relação ao Equals, sim você deve colocar o Id desejado. Isso é equivalente a usar o operador de igualdade ==.

Abraço.
Responder Citar

30/08/2012

Pjava

O erro é:
Only assigment,call,increment,decrement....can be used a statement
Responder Citar

04/09/2012

Joel Rodrigues

Em que ponto esse erro ocorre?
Responder Citar

10/09/2012

Joel Rodrigues

E aí, PJava, como ficou ?
Responder Citar

10/09/2012

Pjava

Desculpe-me não ter avisado antes. Mudamos algumas coisas no Projeto e não foi mais necessários isso. Esse post pode ser encerrado.
Responder Citar

10/09/2012

Joel Rodrigues

ok, obrigado pelo retorno.
Estou encerrando o tópico.
Responder Citar