コード例 #1
0
        public void MunicipalityTaxDatabaseAgent_GetMunicipalityTaxForDate_FindsTheTax()
        {
            var options = new DbContextOptionsBuilder <MunicipalityTaxContext>()
                          .UseInMemoryDatabase(databaseName: "Gets_inserted_tax")
                          .Options;

            using (var context = new MunicipalityTaxContext(options))
            {
                context.MunicipalityTax.Add(new MunicipalityTax()
                {
                    DateFrom     = new DateTime(2019, 5, 1),
                    DateTo       = new DateTime(2019, 5, 2),
                    Priority     = PriorityEnum.VeryHigh,
                    Tax          = 2.3m,
                    Municipality = "Vilnius",
                    Id           = 1
                });
                context.SaveChanges();
            }

            using (var context = new MunicipalityTaxContext(options))
            {
                var municipalityTaxDatabaseAgent = new MunicipalityTaxDatabaseAgent(context);
                var result = municipalityTaxDatabaseAgent.GetMunicipalityTaxForDate("Vilnius", new DateTime(2019, 5, 1));
                Assert.Equal(2.3m, result.Tax);
            }
        }
コード例 #2
0
        public void MunicipalityTaxDatabaseAgent_GetMunicipalityTaxForDate_InsertsTax()
        {
            var options = new DbContextOptionsBuilder <MunicipalityTaxContext>()
                          .UseInMemoryDatabase(databaseName: "Insert_new_tax")
                          .Options;

            using (var context = new MunicipalityTaxContext(options))
            {
                var municipalityTaxDatabaseAgent = new MunicipalityTaxDatabaseAgent(context);
                var result = municipalityTaxDatabaseAgent.InsertNewMunicipalityTax(new MunicipalityTax()
                {
                    DateFrom     = new DateTime(2019, 5, 1),
                    DateTo       = new DateTime(2019, 5, 2),
                    Priority     = PriorityEnum.Low,
                    Tax          = 2.3m,
                    Municipality = "Vilnius",
                    Id           = 1
                });

                Assert.True(result);
            }

            using (var context = new MunicipalityTaxContext(options))
            {
                Assert.Equal(1, context.MunicipalityTax.Count());
                Assert.Equal(2.3m, context.MunicipalityTax.Single().Tax);
            }
        }
コード例 #3
0
        public static void MigrateDatabase(IWebHost host)
        {
            var scope = host.Services.CreateScope();

            using (scope)
            {
                var baseOptions = scope.ServiceProvider.GetRequiredService <DbContextOptions <MunicipalityTaxContext> >();
                var options     = new DbContextOptionsBuilder <MunicipalityTaxContext>(baseOptions).UseSqlServer(Configuration.GetSection("MyLocalDB").Value);

                using (var db = new MunicipalityTaxContext(options.Options))
                {
                    db.MigrateDatabase();
                }
            }
        }
コード例 #4
0
 public TaxAccessLayer(MunicipalityTaxContext context)
 {
     this.context = context;
 }
コード例 #5
0
 public MunicipalityTaxRepositoryEF(MunicipalityTaxContext dbContext)
 {
     this.dbContext = dbContext;
 }
コード例 #6
0
 public MunicipalityTaxManager(MunicipalityTaxContext context)
 {
     _municipalityTaxContext = context;
 }