using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
namespace PnvPanel.Infrastructure.Persistence;
///
/// Применение EF Core-миграций при старте приложения (стратегия MVP — авто-миграции).
///
public static class MigrationExtensions
{
public static async Task ApplyMigrationsAsync(
this IServiceProvider services,
CancellationToken cancellationToken = default
)
{
await using var scope = services.CreateAsyncScope();
var dbContext = scope.ServiceProvider.GetRequiredService();
await dbContext.Database.MigrateAsync(cancellationToken);
}
}