Bueno estoy practicando en C# la parte de Datatables, datarow, etc., y estoy en la parte de practicar con DataSet pero agregandolo como un item mas a la clase (dar clic derecho agregar new item y asi y seleccionando dataset). Lo lleno y todo bien como uso dos tablas ceo una tercera para tener la relacion de las dos primeras pero a la hora de recorrerlo para mostrar los datos en consola no me muestra nada.
Para recorrerlo uso dos foreach ya lo debuggue y en el segundo foreach no hace nada, entonces no se si me puedan ayudar en indicarme si me hace falta algo y de antemano una disculpa si es algo sencillo.
Código HTML:
Ver original
dsUniversidad miUniversidad = new dsUniversidad(); dsUniversidad.dtAlumnosDataTable dtAlumnos = new dsUniversidad.dtAlumnosDataTable(); dsUniversidad.dtCursosDataTable dtCurso = new dsUniversidad.dtCursosDataTable(); dsUniversidad.dtAlumnosRow rowAlumno = dtAlumnos.NewdtAlumnosRow(); rowAlumno.Apellido = "Perez"; rowAlumno.Nombre = "Juan"; dtAlumnos.AdddtAlumnosRow(rowAlumno); dsUniversidad.dtCursosRow rowCurso = dtCurso.NewdtCursosRow(); rowCurso.Curso = "Informatica"; dtCurso.AdddtCursosRow(rowCurso); dsUniversidad.dt_Alumnos_CursosDataTable dtAlumnos_Cursos = new dsUniversidad.dt_Alumnos_CursosDataTable(); dsUniversidad.dt_Alumnos_CursosRow rowAlumnosCursos = dtAlumnos_Cursos.Newdt_Alumnos_CursosRow(); rowAlumno = dtAlumnos.NewdtAlumnosRow(); rowAlumno.Nombre = "Marcelo"; rowAlumno.Apellido = "Perez"; dtAlumnos.AdddtAlumnosRow(rowAlumno); dtAlumnos_Cursos.Adddt_Alumnos_CursosRow(rowAlumno, rowCurso); Console.Write("Indique el nombre del curso: "); string materia = Console.ReadLine(); Console.WriteLine("Listado de alumnos asociados al curso " + materia); foreach (dsUniversidad.dtCursosRow rCurso in dtCurso.Select("Curso = '" + materia + "'")) { foreach (dsUniversidad.dt_Alumnos_CursosRow rAlumno in rCurso.Getdt_Alumnos_CursosRows()) { string nombre = rAlumno.dtAlumnosRow.Nombre; string apellido = rAlumno.dtAlumnosRow.Apellido; Console.WriteLine(apellido + ", " + nombre); } } Console.ReadLine();