示例#1
0
        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;
            }
        }
示例#2
0
        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;
                }
            }
        }