No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de ASP.NET Core

Curso de ASP.NET Core

Juan Carlos Ruiz

Juan Carlos Ruiz

Optimizando siembra de datos

20/35
Recursos

Aportes 18

Preguntas 6

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Para evitar repetir codigo creando una propiedad en cada controlador, podemos crear nuestro propio base controller que herede de “Controller” y ahi tener la propiedad Escuela Context.

public class BaseController : Controller
{
public SchoolContext SchoolContext { get; }

    public BaseController(SchoolContext context) : base()
    {
        this.SchoolContext = context;
    }
}

En vez de recibir como @model un IEnumerable, podemos convertir a lista el objeto de EscuelaContext, con EscuelaContext.Alumno.ToList().

Otra forma de corregir lo de la vista, es agregándole .ToList() al DbSet que le mandamos a la vista.

return View("MultiAsignatura", _context.Asignaturas.ToList());

Esos videos de 15 minutos promedio fácilmente podrían ser de 8 si el tutor ya tuviera el código listo y simplemente explicara los conceptos.

No vi nada de optimización.

Excelente la siembra de datos y el uso del contexto para el acceso a los datos

alternativa a IEnumerable :
agregar al return view .ToList() quedando asi :
return View(“multiAlumno”,_context.Alumnos.ToList());

de esa forma ya funcionaria

Siembra: aplica la primera vez que se lanza al ORM y si no existen las tablas en la base de datos

buena clase !!!

Excelente tema!!

Muy Buena Clase

buena explicación.

muy bien.

Interesante

¿La misma funcionalidad de EF es la misma en EF Core? ¿Lo pregunto porque tengo un libro de EF “normalito” y quería saber si me puede servir para aprender ésto, en su version (o deición) Core?

Para la parte de Inyección de dependencia recomiendo que sea lea la siguiente documentación de Microsoft.

para entender lo que sucede en este codigo…

using (var scope = host.Services.CreateScope())
            {
                var services = scope.ServiceProvider;
                try
                {
                    var context = services.GetRequiredService<EscuelaContext>();
                    //garantia de creacion de datos. 
                    //validacion previa antes de iniciarlizar el programa.
                    context.Database.EnsureCreated();
                }```

Excelente clase!