Aprende a realizar migraciones en Entity Framework Core utilizando PostgreSQL para gestionar los cambios en tu base de datos de manera eficiente. Este tutorial te guiará paso a paso sobre cómo integrar PostgreSQL en tu proyecto ASP.NET Core y manejar migraciones.
Asegúrate de instalar los paquetes de EntityFrameworkCore
y el proveedor para PostgreSQL:
dotnet add package Npgsql.EntityFrameworkCore.PostgreSQL
Crea una clase de contexto que derive de DbContext
, donde defines las tablas que representarán las entidades de tu base de datos.
public class ApplicationDbContext : DbContext { public DbSet<Producto> Productos { get; set; } public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options) { } }
Configura la cadena de conexión en tu archivo appsettings.json
para conectarte a PostgreSQL.
{ "ConnectionStrings": { "DefaultConnection": "Host=myserver;Database=mydb;Username=myuser;Password=mypassword" } }
Startup.cs
Registra el servicio de DbContext
en el contenedor de dependencias de ASP.NET Core.
public void ConfigureServices(IServiceCollection services) { services.AddDbContext<ApplicationDbContext>(options => options.UseNpgsql(Configuration.GetConnectionString("DefaultConnection"))); services.AddControllersWithViews(); }
Abre la consola de administración de paquetes o la CLI de .NET y ejecuta el siguiente comando para crear una migración. Esto generará una clase que describe los cambios en tu modelo de datos.
dotnet ef migrations add NombreDeLaMigracion
Para aplicar la migración a tu base de datos PostgreSQL y actualizarla con los cambios, usa el siguiente comando:
dotnet ef database update
Verifica que los cambios se hayan aplicado correctamente revisando tu base de datos PostgreSQL. Deberías ver las tablas y relaciones actualizadas según el modelo de datos.
Si necesitas deshacer una migración, puedes usar el siguiente comando para revertir los cambios en tu base de datos:
dotnet ef database update NombreDeLaMigracionAnterior