InkForge/design/InkForge.Migrations/ApiDbContextFactory.cs

24 lines
629 B
C#
Raw Permalink Normal View History

2024-02-07 22:16:59 +01:00
using InkForge.Api.Data;
using Microsoft.EntityFrameworkCore;
namespace InkForge.Migrations;
public class ApiDbContextFactory : MigratingDbContextFactory<ApiDbcontext>
{
protected override void Configure(
DbContextOptionsBuilder<ApiDbcontext> optionsBuilder,
string connectionString,
string provider
) => _ = provider switch
{
"Sqlite" => optionsBuilder.UseSqlite(connectionString,
m => m.MigrationsAssembly("InkForge.Api.Sqlite")
),
_ => throw new Exception($"Invalid DbProvider: {provider}")
};
protected override ApiDbcontext CreateDbContext(DbContextOptions<ApiDbcontext> options) => new(options);
}