using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; using System; namespace DG.EntityFramework { public class EFCoreOptionsExtension where TDbContext : DbContext { private readonly Action> _configure; public EFCoreOptionsExtension(Action> configure) { _configure = configure; } public void AddServices(IServiceCollection services) { var options = new EFCoreOptions(); _configure(options); services.AddDbContext(); services.Configure(_configure); services.AddScoped>(); services.AddScoped>(); services.AddScoped, DbContextProvider>(); } } }