Fórum Instanciar objetos lista numa classe POCO #422939
30/08/2012
0
public class Rotina : EntidadeBase
{
#region --- Propriedades Privadas (Rotina) ---
private Lista<Tarefa> cTarefas;
private Lista<AgendamentoRotina> cAgendamentos;
#endregion
#region --- Propriedades Públicas (Rotina) ---
public Lista<Tarefa> Tarefas
{
get { return cTarefas; }
set { cTarefas = value; }
}
public Lista<AgendamentoRotina> Agendamentos
{
get { return cAgendamentos; }
set { cAgendamentos = value; }
}
#endregion
public void Executar()
{
foreach (var tarefa in this.Tarefas)
{
tarefa.Execute();
}
}
}
Pjava
Curtir tópico
+ 0Posts
30/08/2012
Edson Oliveira
public class Rotina : EntidadeBase
{
#region --- Propriedades Privadas (Rotina) ---
private Lista<Tarefa> cTarefas;
private Lista<AgendamentoRotina> cAgendamentos;
#endregion
#region --- Propriedades Públicas (Rotina) ---
public Lista<Tarefa> Tarefas
{
get { return cTarefas; }
set { cTarefas = value; }
}
public Lista<AgendamentoRotina> Agendamentos
{
get { return cAgendamentos; }
set { cAgendamentos = value; }
}
#endregion
public void Executar()
{
foreach (var tarefa in this.Tarefas)
{
tarefa.Execute();
}
}
}
O que vc está fazendo é chamar o método executar antes de da um new na lista.
Na sua chamada seria assim.
Rotina oRotina = new Rotina();
oRotina.Tarefas = new List<Tarefa>
oRotina.Tarefas.Add(new Tarefa() { Id = 1 });
oRotina.Executar();
Agora se vc quer garantir que não de algum tipo de erro, vc pode fazer isso.
public Lista<Tarefa> Tarefas
{
get
{
if(cTarefas == null) { cTarefas = new List<Tarefa>(); }
return cTarefas;
}
set { cTarefas = value; }
}
Gostei + 0
31/08/2012
Pjava
this.Tarefas = new Lista<Tarefa>();
this.Tarefas.Select(c => new { c.IdTarefa, c.Descricao, c.Rotina, c.TipoTarefa, c.DataAlteracao, c.DataInclusao, c.Ativo });
Gostei + 0
31/08/2012
Edson Oliveira
this.Tarefas.Select(c => new { c.IdTarefa, c.Descricao, c.Rotina, c.TipoTarefa, c.DataAlteracao, c.DataInclusao, c.Ativo });
Mas vc não adicionou nenhum elemento na lista. Para adicionar é só fazer isso.
this.Tarefas = new Lista<Tarefa>();
Tarefa oTarefa = new Tarefa();
oTarefa.Id = 1;
oTarefa.Descricao= "Item";
oTarefa.TipoTarefa= 1;
oTarefa.DataAlteracao= DateTime.Now;
oTarefa.DataInclusao= DateTime.Now;
oTarefa.Ativo = true;
this.Tarefas.Add(oTarefa);
Gostei + 0
31/08/2012
Pjava
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)