Seleccionado un Curso de una Grilla Curso, y una Materia de ese Curso, de una Grilla Materia, me debe llenar una 3° grilla con datos de Alumnos de ese Curso y Materia...Pero me da ese error...
Dejo codigo de Select, codigo html, y captura de las Grillas, mas Tablas para corroborar como esta enfocado, si corresponde..
Gracias, abrazos digitales, nos vemos...............
Código
public List<MateriaPorAlumnoEntity> getAlumnosPorMateria(int Curso, int Materia) { try { connection.Open(); command.Parameters.AddWithValue("@idCurso", Curso); command.Parameters.AddWithValue("@idMateria", Materia); command.CommandText = @"SELECT Alumno.Id_Alumno, Alumno.Nombre AS NombreAlumno, Alumno.Apellido, Alumno.Dni, MateriaPorAlumno.Id, TurnoMateria.Id_Turno FROM (TurnoMateria turm INNER JOIN MateriaPorAlumno mpal ON mpal.Id_Turno = turm.Id_Turno) INNER JOIN Alumno alum ON alum.Id_Alumno = mpal.Id_Alumno WHERE turm.Id_Curso = @idCurso AND turm.Id_Materia = @idMateria"; OleDbDataReader lector = command.ExecuteReader(); while (lector.Read()) { if (lector["Id"] != null) materiaPorAlumno.Id = Convert.ToInt32(lector["Id"].ToString()); if (lector["Id_Alumno"] != null) { materiaPorAlumno.Alumno.Id_Alumno = Convert.ToInt32(lector["Id_Alumno"].ToString()); materiaPorAlumno.Alumno.Nombre = lector["NombreAlumno"].ToString(); materiaPorAlumno.Alumno.Apellido = lector["Apellido"].ToString(); materiaPorAlumno.Alumno.Dni = Convert.ToInt32(lector["Dni"].ToString()); } if (lector["Id_Turno"] != null) { materiaPorAlumno.Turno.Id_Turno = Convert.ToInt32(lector["Id_Turno"].ToString()); //materiaPorAlumno.Turno.Materia = new MateriaEntity(); //materiaPorAlumno.Turno.Materia.Id_Materia = Convert.ToInt32(lector["Id_Materia"].ToString()); //materiaPorAlumno.Turno.Materia.Nombre = lector["Nombre"].ToString(); } listEntities.Add(materiaPorAlumno); } return listEntities; } catch (Exception ex) { throw ex; }
Codigo HTML de 3° Grilla
Código
<asp:GridView ID="GridMatPorAlum" runat="server" AutoGenerateColumns="False" BackColor="#DEBA84" BorderColor="#DEBA84" BorderStyle="None" BorderWidth="1px" CellPadding="3" CellSpacing="2" HorizontalAlign="Center" DataKeyNames="Id_Turno"> <Columns> <asp:TemplateField HeaderText="Nombre"> <ItemTemplate> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Apellido"> <ItemTemplate> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Dni"> <ItemTemplate> </ItemTemplate> </asp:TemplateField> </Columns> <FooterStyle BackColor="#F7DFB5" ForeColor="#8C4510" /> <HeaderStyle BackColor="#A55129" Font-Bold="True" ForeColor="White" /> <PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" /> <RowStyle BackColor="#FFF7E7" ForeColor="#8C4510" /> <SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="White" /> <SortedAscendingCellStyle BackColor="#FFF1D4" /> <SortedAscendingHeaderStyle BackColor="#B95C30" /> <SortedDescendingCellStyle BackColor="#F1E5CE" /> <SortedDescendingHeaderStyle BackColor="#93451F" /> </asp:GridView> </asp:Content>
Captura de web grillas
Captura de Tablas Intervinientes....
Saludos, gracias, nos vemos....