/// <summary> /// SQL Server specific extension method for Microsoft.EntityFrameworkCore.DbContextOptionsBuilder /// </summary> /// <param name="optionsBuilder">Database context options builder</param> /// <param name="services">Collection of service descriptors</param> public static void UseSqlServerWithLazyLoading(this DbContextOptionsBuilder optionsBuilder, IServiceCollection services) { VerivoxConfig nopConfig = services.BuildServiceProvider().GetRequiredService <VerivoxConfig>(); DbContextOptionsBuilder dbContextOptionsBuilder = optionsBuilder.UseLazyLoadingProxies(); dbContextOptionsBuilder.UseSqlServer(nopConfig.DataConnectionString); }
public static void AddDbContext(this IServiceCollection services) { services.AddDbContext <Context>(optionsBuilder => { VerivoxConfig VerivoxConfig = services.BuildServiceProvider().GetRequiredService <VerivoxConfig>(); DbContextOptionsBuilder dbContextOptionsBuilder = optionsBuilder.UseLazyLoadingProxies(); dbContextOptionsBuilder.UseSqlServer(VerivoxConfig.DataConnectionString); }); }
public static IServiceProvider ConfigureApplicationServices(this IServiceCollection services, IConfiguration configuration, IWebHostEnvironment hostingEnvironment) { //add Config configuration parameters VerivoxConfig config = services.ConfigureStartupConfig <VerivoxConfig>(configuration.GetSection("Verivox")); //add accessor to HttpContext services.AddHttpContextAccessor(); CommonHelper.DefaultFileProvider = new VerivoxFileProvider(hostingEnvironment); IMvcCoreBuilder mvcCoreBuilder = services.AddMvcCore(); mvcCoreBuilder.PartManager.InitializePlugins(config); //create, initialize and configure the engine IEngine engine = EngineContext.Create(); IServiceProvider serviceProvider = engine.ConfigureServices(services, configuration); SqlServerDataProvider.InitializeDatabase(config.DataConnectionString); engine.Resolve <IPluginService>().InstallPlugins(); return(serviceProvider); }