public static async Task EnsureSeededAsync(this BreweryDbContext context, Func <Task> generator)
 {
     if (context.Breweries.Any() == false)
     {
         await generator();
     }
 }
Example #2
0
        static void Main(string[] args)
        {
            // Deleting DB
            // Creating DB
            // Adding a Brewer
            using (BreweryDbContext context = new BreweryDbContext())
            {
                context.Database.EnsureDeleted();
                context.Database.EnsureCreated();

                Brewer newBrewer = new Brewer("Moortgat", "Brouwerij Duvel Moortgat biedt je een heerlijke brouwerij-ervaring. Ben je een volledige leek of reikt je kennis toch al iets verder? Je ontdekt ongetwijfeld wat je zoekt.");

                context.Brewers.Add(newBrewer);

                context.SaveChanges();
            }

            // Query The Brewer

            using (BreweryDbContext context = new BreweryDbContext())
            {
                Brewer moortgat = context.Brewers.FirstOrDefault();
                Console.WriteLine(moortgat.Name);
            }
        }
Example #3
0
 public ReviewsByBreweryIdDataLoader(
     IBatchScheduler batchScheduler,
     BreweryDbContext breweryDbContext)
     : base(batchScheduler)
 {
     _breweryDbContext = breweryDbContext ?? throw new ArgumentNullException(nameof(breweryDbContext));
 }
Example #4
0
        private void InitializeData(BreweryDbContext context)
        {
            if (context.Brewers.Any())
            {
                return;
            }
            List <Brewer> brewers = new List <Brewer>();

            for (int i = 0; i < 2000; i++)
            {
                Address address = new Address($"Street {i}", $"Country {i}");
                brewers.Add(new Brewer($"Brewer {i}", $"Some Description for brewer {i}", $"brewer{i}@gnail.com", address, DateTime.UtcNow));
            }
            context.AddRange(brewers);

            List <Customer> customers = new List <Customer>();

            for (int i = 0; i < 2000; i++)
            {
                Address address = new Address($"Street {i}", $"Country {i}");
                customers.Add(new Customer($"Brewer {i}", $"BE {i}", address));
            }
            context.AddRange(customers);
            context.SaveChanges();
        }
Example #5
0
        public void OneTimeSetup()
        {
            var optionsBuilder = new DbContextOptionsBuilder <BreweryDbContext>();

            optionsBuilder.UseSqlServer("Data Source=DESKTOP-HIOFRPI\\SQLEXPRESS;Initial Catalog=breweryapi;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False");
            _context = new BreweryDbContext(optionsBuilder.Options);
        }
Example #6
0
        //method to delete a brewery
        public bool DeleteBrewery(int breweryId)
        {
            using (var ctx = new BreweryDbContext())
            {
                var entity =
                    ctx
                    .Breweries
                    .Single(e => e.BreweryId == breweryId);

                ctx.Breweries.Remove(entity);

                return(ctx.SaveChanges() == 1);
            }
        }
Example #7
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env, BreweryDbContext context)
        {
            context.Database.EnsureCreated();
            InitializeData(context);

            app.UseResponseCompression();

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            // Use component registrations and static files from the app project.
            app.UseServerSideBlazor <App.Startup>();
        }
Example #8
0
        public async Task <ReviewPayload> CreateReview(
            ReviewInput input,
            [Service] BreweryDbContext dbContext,
            [Service] IBreweryConductor breweryConductor,
            [Service] ITopicEventSender eventSender,
            CancellationToken cancellationToken)
        {
            if (string.IsNullOrEmpty(input.Subject))
            {
                throw ErrorBuilder.New()
                      .AsGraphQLException(SUBJECT_EMPTY, nameof(SUBJECT_EMPTY));
            }

            if (string.IsNullOrEmpty(input.Body))
            {
                throw ErrorBuilder.New()
                      .AsGraphQLException(BODY_EMPTY, nameof(BODY_EMPTY));
            }

            var review = new Review
            {
                Subject   = input.Subject,
                Body      = input.Body,
                BreweryId = input.BreweryId,
                CreatedOn = DateTimeOffset.Now,
            };

            _ = await dbContext.AddAsync(review);

            _ = await dbContext.SaveChangesAsync(cancellationToken);

            var breweryResult = breweryConductor.Find(input.BreweryId);

            if (breweryResult.HasErrorsOrResultIsNull())
            {
                throw breweryResult.Errors
                      .AsGraphQLException();
            }

            review.Brewery = breweryResult.ResultObject;

            await eventSender.SendAsync(
                nameof(ReviewSubscriptions.OnReviewReceived),
                review,
                cancellationToken);

            return(new ReviewPayload(review, input.ClientMutationId));
        }
Example #9
0
        //method to create a brewery
        public bool CreateBrewery(BreweryCreate model)
        {
            var entity = new Brewery()
            {
                Name      = model.Name,
                Inception = model.Inception,
                Location  = model.Location,
                About     = model.About,
            };

            using (var ctx = new BreweryDbContext())
            {
                ctx.Breweries.Add(entity);
                return(ctx.SaveChanges() == 1);
            }
        }
Example #10
0
        //method to update a brewery
        public bool UpdateBrewery(BreweryEdit model)
        {
            using (var ctx = new BreweryDbContext())
            {
                var entity =
                    ctx
                    .Breweries
                    .Single(e => e.Name == model.Name);


                entity.Name      = model.Name;
                entity.Inception = model.Inception;
                entity.Location  = model.Location;
                entity.About     = model.About;


                return(ctx.SaveChanges() == 1);
            }
        }
Example #11
0
 //method to get a list of brewery
 public IEnumerable <BreweryListItem> GetBreweries()
 {
     using (var ctx = new BreweryDbContext())
     {
         var query =
             ctx
             .Breweries
             .Select(
                 e =>
                 new BreweryListItem
         {
             Name      = e.Name,
             Inception = e.Inception,
             Location  = e.Location,
             About     = e.About
         }
                 );
         return(query.ToArray());
     }
 }
 public WholesalerRepository(BreweryDbContext context, ILogger <WholesalerRepository> logger) : base(context, logger)
 {
 }
Example #13
0
 public BeerRepository(BreweryDbContext context, ILogger <BeerRepository> logger) : base(context, logger)
 {
 }
Example #14
0
 public UserConductor(BreweryDbContext data)
 {
     _data = data;
 }
Example #15
0
 public BrewRepository(BreweryDbContext contextInjection)
     : base(contextInjection)
 {
 }
Example #16
0
 public CustomerManager(BreweryDbContext context)
 {
     _dbContext = context;
 }
 public BreweryTagConductor(BreweryDbContext data)
 {
     _data = data;
 }
Example #18
0
        //private readonly bool disposed;

        public GenericRepository(BreweryDbContext contextInjection)
        {
            Context   = contextInjection;
            EntitySet = Context.Set <TEntity>();
        }
Example #19
0
 public RepositoryBase(BreweryDbContext context, ILogger <RepositoryBase <T> > logger) : this(logger)
 {
     Context = context;
 }
Example #20
0
 public IngredientRepository(BreweryDbContext contextInjection) : base(contextInjection)
 {
 }