Sólo como detalle, yo tuve que intalar también la libreria "Microsoft.AspNetCore.OData" para realizar estos ejemplos.
Saludos.
Sólo como detalle. Al parecer debería verse primero el tema siguiente (Migrations) ya que en ese se explica la generación de la db en sql server.
Saludos.
Aquí me surgió un problema difícil de solucionar pero que no termine de enteder. Al mandar a llamar el constructor del controlador se envía el context y enseguida se llama el método "apiContext.Database.EnsureCreated()", al ejecutar el primer request funcionaba bien, sin embargo, ejecutar un segundo request mandaba una excepción, esto se debía a que en cada request se hace una nueva instancia del controlador y por tanto se llama al constructor y se ejecuta de nuevo esa línea, al parecer se intenta crear de nuevo una db en cada request. Tuve que configurar el parámetro "contextLifeTime" a singleton (igual que en la injección de dependencias) del servicio "AddDbContext". Sin embargo esto sólo limito la instancia de la db pero no la del controlador, asi que tuve que mover "Database.EnsureCoreated()" al constructor del context para que no se ejecutara en cada request. De esta forma los ejercicios funcionaron bien.
Mis preguntas son:
¿Es verdad que se intentan hacer instancias nuevas de la db en cada request si no se configura como singleton?
¿No está funcionando de una forma adecuada "Database.EnsureCoreated()" para mi? ya que yo entendería que esa puede ser su función, verificar si existe la db.
Gracias, Igual excelente curso, lo demás ha funcionado de maravilla. Saludos,
Un detalle cuando sobreescribí éste método. Específicamente donde agregas los registros a la tabla "user", no me funcionó la línea:
[modelBuilder.Entity](//modelBuilder.Entity)<User>().ToTable("User").HasData(usersInitData);
Debe ser por la versión del Net Core, la línea que sí me funcionó fue:
[modelBuilder.Entity](//modelBuilder.Entity)<User>().ToTable("User").HasData([usersInitData.ToArray](//usersInitData.ToArray)());
Parece que en algunos métodos se pedía en versiones anteriores estrictamente un array.
Que tal. Sigo con entusiasmo el curso, sin embargo noté que no está definido UseEndpoints en IApplicationBuilder. Luego no puedo definir la ruta como en el video. Utilizo Visual Studio 2017 y al parecer sólo soporta hasta la version .NETCore 2.1 y en el tutorial utilizan una arriba de 3. ¿Puedo instalar algún dll que me solucione esto o tendría que actualizar mi VS al 2019 para que soporte el.NET Core 3?
Excelente curso!! Saludos