public static IWebHost RegisterSql <TContext>(this IWebHost webHost, Func <TContext, IServiceProvider, Task> seeder = null) where TContext : DbContext { return(webHost .ExecuteForSql <TContext>("Migration", async(context, services) => await context.Database.MigrateAsync()) .ExecuteForSql <TContext>("Seeding", async(context, services) => { if (seeder != null) { await seeder(context, services); } })); }