public void ListarComision() { ComisionLogic cl = new ComisionLogic(); CursoLogic cul = new CursoLogic(); PlanLogic pl = new PlanLogic(); EspecialidadLogic el = new EspecialidadLogic(); MateriaLogic ml = new MateriaLogic(); //obtengo los cursos q halla de esa materia este año Materia materia = ml.GetOne(((Materia)this.dgvMateria.SelectedRows[0].DataBoundItem).ID); List <Curso> cursos = new List <Curso>(); foreach (Curso curso in cul.GetAllWhereMateria(materia)) { if (curso.AnioCalendario == DateTime.Today.Year) { if (curso.Cupo > 0) { cursos.Add(curso); } } } foreach (Curso curso in cursos) { //busco los numeros de comisiones curso.Comision = cl.GetOne(curso.IdComision).DescComision; //busco a que especialidad pertenecen curso.AñoEspecialidad = cl.GetOne(curso.IdComision).AnioEspecialidad.ToString(); curso.Especialidad = el.GetOne(pl.GetOne(cl.GetOne(curso.IdComision).IdPlan).IdEspecialidad).DescEspecialidad; } this.dgvComision.AutoGenerateColumns = false; this.dgvComision.DataSource = cursos; }