La consulta que intento hacer debe recuperar todas las Asignaciones junto con sus Recursos y Materias para un Profesor dado.
Código C#:
Ver original
var asignacionesPaginadas = await db.Asignaciones.AsNoTracking() .Where(a => a.Profesores.ProfesorId=profesorId) .Include(a => a.Materia) .Include(a => a.Recurso) .OrderBy(a => a.FechaHoraReserva) .Skip(_paginado.CantidadPorPagina * _paginado.PaginaActual) .Take(_paginado.CantidadPorPagina) .ToListAsync();
Y genera la siguiente sentencia SQL:
Código SQL:
Ver original
SELECT [Project1].[AsignacionId] AS [AsignacionId], [Project1].[FechaHoraReserva] AS [FechaHoraReserva], [Project1].[MateriaId] AS [MateriaId], [Project1].[Nombre] AS [Nombre], [Project1].[Carrera] AS [Carrera], [Project1].[RecursoId] AS [RecursoId], [Project1].[Descripcion] AS [Descripcion] FROM ( SELECT [Extent1].[AsignacionId] AS [AsignacionId], [Extent1].[FechaHoraReserva] AS [FechaHoraReserva], [Extent2].[MateriaId] AS [MateriaId], [Extent2].[Nombre] AS [Nombre], [Extent2].[Carrera] AS [Carrera], [Extent3].[RecursoId] AS [RecursoId], [Extent3].[Descripcion] AS [Descripcion] FROM [dbo].[Asignaciones] AS [Extent1] INNER JOIN [dbo].[Materias] AS [Extent2] ON [Extent1].[Materia_MateriaId] = [Extent2].[MateriaId] INNER JOIN [dbo].[Recursos] AS [Extent3] ON [Extent1].[Recurso_RecursoId] = [Extent3].[RecursoId] WHERE [Extent1].[Profesor_ProfesorId] = @p__linq__0 ) AS [Project1] ORDER BY [Project1].[FechaHoraReserva] ASC OFFSET 5 ROWS FETCH NEXT 5 ROWS ONLY
Yo quiero que genere la siguiente sentencia SQL:
Código SQL:
Ver original
SELECT [Extent1].[AsignacionId] AS [AsignacionId], [Extent1].[FechaHoraReserva] AS [FechaHoraReserva], [Extent2].[MateriaId] AS [MateriaId], [Extent2].[Nombre] AS [Nombre], [Extent2].[Carrera] AS [Carrera], [Extent3].[RecursoId] AS [RecursoId], [Extent3].[Descripcion] AS [Descripcion] FROM [dbo].[Asignaciones] AS [Extent1] INNER JOIN [dbo].[Materias] AS [Extent2] ON [Extent1].[Materia_MateriaId] = [Extent2].[MateriaId] INNER JOIN [dbo].[Recursos] AS [Extent3] ON [Extent1].[Recurso_RecursoId] = [Extent3].[RecursoId] WHERE [Extent1].[Profesor_ProfesorId] = @p__linq__0 ORDER BY [Extent1].[FechaHoraReserva] ASC OFFSET 5 ROWS FETCH NEXT 5 ROWS ONLY
Estoy trabajando con la versión 6 de Entity Framework junto con SQL Server localdb 13.0.2151