public RecipesService(RecipesContext context, ILogger <RecipesService> logger, IMediaLogicHelper mediaHelper, IMapper mapper) { this.Context = context ?? throw new ArgumentNullException(nameof(context)); this.MediaHelper = mediaHelper; this.Entities = this.Context.Set <Recipe>() ?? throw new ArgumentNullException(nameof(context)); this._logger = logger; this._mapper = mapper; try { context.Database.EnsureCreated(); } catch (Exception e) { this._logger.LogError($"Database isn't reachable. Exception: {e.InnerException}", e); throw e; } }
private void TestDBConnection() { var contextOptions = new DbContextOptionsBuilder <RecipesContext>() .UseMySql(Configuration.GetConnectionString("DefaultConnection"), new MySqlServerVersion(new Version(8, 0, 18))) .Options; using (var context = new RecipesContext(contextOptions)) { try { context.Database.EnsureCreated(); } catch (Exception e) { throw e; } } }