public void Execute(GerenciaPrazoDasTarefas comando) { var agora = comando.DataHoraAtual; //pegar todas as tarefas não concluídas que passaram do prazo var tarefas = _repositorioTarefas .ObtemTarefas(t => t.Prazo <= agora && t.Status != StatusTarefa.Concluida) .ToList(); //atualizá-las com status Atrasada tarefas.ForEach(t => t.Status = StatusTarefa.EmAtraso); //salvar tarefas _repositorioTarefas.AtualizarTarefas(tarefas.ToArray()); }