using System.Reflection; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; // ReSharper disable once CheckNamespace namespace Elsa.EntityFrameworkCore.Extensions; /// /// Contains extension methods for . /// public static class DbContextOptionsBuilderExtensions { /// /// Configures Entity Framework Core with SQLite. /// public static DbContextOptionsBuilder UseElsaSqlite(this DbContextOptionsBuilder builder, Assembly migrationsAssembly, string connectionString = Constants.DefaultConnectionString, ElsaDbContextOptions? options = default, Action? configure = default) => builder .UseElsaDbContextOptions(options) .UseSqlite(connectionString, db => { db .MigrationsAssembly(options.GetMigrationsAssemblyName(migrationsAssembly)) .MigrationsHistoryTable(options.GetMigrationsHistoryTableName(), options.GetSchemaName()); configure?.Invoke(db); }); }