Fazer busca em lista

.NET

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

Pjava

Curtidas 0

Respostas

Joel Rodrigues

Joel Rodrigues

30/08/2012

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?
GOSTEI 0
Pjava

Pjava

30/08/2012

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.
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

30/08/2012

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.
GOSTEI 0
Pjava

Pjava

30/08/2012

O erro é:
Only assigment,call,increment,decrement....can be used a statement
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

30/08/2012

Em que ponto esse erro ocorre?
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

30/08/2012

E aí, PJava, como ficou ?
GOSTEI 0
Pjava

Pjava

30/08/2012

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.
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

30/08/2012

ok, obrigado pelo retorno.
Estou encerrando o tópico.
GOSTEI 0
POSTAR