public static async Task SeedAsync(CatalogoContext catalogoContext, ILoggerFactory loggerFactory, int?retry = 0) { int retryForAvailability = retry.Value; try { // TODO: Only run this if using a real database // context.Database.Migrate(); if (!catalogoContext.CatalogoMarcas.Any()) { catalogoContext.CatalogoMarcas.AddRange( GetPreconfiguredCatalogoMarcas()); await catalogoContext.SaveChangesAsync(); } if (!catalogoContext.CatalogosTipos.Any()) { catalogoContext.CatalogosTipos.AddRange( GetPreconfiguredCatalogosTipos()); await catalogoContext.SaveChangesAsync(); } if (!catalogoContext.CatalogoItems.Any()) { catalogoContext.CatalogoItems.AddRange( GetPreconfiguredItems()); await catalogoContext.SaveChangesAsync(); } } catch (Exception ex) { if (retryForAvailability < 10) { retryForAvailability++; var log = loggerFactory.CreateLogger <CatalogoContextSeed>(); log.LogError(ex.Message); await SeedAsync(catalogoContext, loggerFactory, retryForAvailability); } } }
public EfRepository(CatalogoContext dbContext) { _dbContext = dbContext; }
public PedidoRepository(CatalogoContext dbContext) : base(dbContext) { }