public void Initialize() { DbContextOptions <ToggleContext> options = new DbContextOptionsBuilder <ToggleContext>() .UseInMemoryDatabase(databaseName: "Toggle API") .Options; _context = new ToggleContext(options); _context.EnsureSeedDataForContext(); }
/// <summary> /// Ensures that a database is created and if it is empty and, if so, it feeds some data into it. /// </summary> /// <param name="context">Database context</param> public static void EnsureSeedDataForContext(this ToggleContext context) { context.Database.EnsureCreated(); if (context.ToggleItems.Any()) { return; } SeedToggles(context); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, ToggleContext context, UserManager <SystemUser> userMgr, RoleManager <IdentityRole> roleMgr) { LoggerFactory.AddDebug(); SetupExceptionHandler(app, env); app.UseMvc(); app.UseAuthentication(); SetupAutomapper(); SetupSwaggerDocumentation(app); context.EnsureSeedDataWithUsers(userMgr, roleMgr); }
private static void SeedToggles(ToggleContext context) { var isButtonBlue = new Toggle { Id = new Guid(), Name = "isButtonBlue", Version = 1, Configurations = { new Configuration { SystemName = "*", Value = true } } }; var isButtonGreen = new Toggle { Id = new Guid(), Name = "isButtonGreen", Version = 1, Configurations = { new Configuration { SystemName = "Abc", Value = true } } }; var isButtonRed = new Toggle { Id = new Guid(), Name = "isButtonRed", Version = 1, Configurations = { new Configuration { SystemName = "*", Value = true }, new Configuration { SystemName = "Abc", Value = false } } }; context.ToggleItems.Add(isButtonBlue); context.ToggleItems.Add(isButtonGreen); context.ToggleItems.Add(isButtonRed); context.SaveChanges(); }
/// <summary> /// Constructor /// </summary> /// <param name="context"></param> public ToggleController(ToggleContext context) { _toggleContext = context; }
/// <summary> /// Constructor /// </summary> /// <param name="context"></param> public ServiceController(ToggleContext context) { _toggleContext = context; }
public Toggles(ToggleContext context) => this.context = context;
public Services(ToggleContext context) => this.context = context;
public static void EnsureSeedDataWithUsers(this ToggleContext context, UserManager <SystemUser> userMgr, RoleManager <IdentityRole> roleMgr) { EnsureSeedDataForContext(context); SeedUsers(userMgr).Wait(); }
public ToggleRepository(ToggleContext context) : base(context) { }
public ToggleRepository(ToggleContext context) { _context = context; }
protected BaseRepository(ToggleContext context) => _connectionString = context.Database.GetDbConnection().ConnectionString;