Exemplo n.º 1
0
        private static void DisplayNormal()
        {
            BitemporalExampleContext dbContext = new BitemporalExampleContext();
            var hourlyRates = dbContext.HourlyRate
                              .Include(n => n.Employee)
                              .OrderBy(n => n.Employee.Name)
                              .ToList();

            Console.WriteLine("Normal");
            Console.WriteLine("-----");

            foreach (var item in hourlyRates)
            {
                Console.WriteLine("Name: " + item.Employee.Name);
                Console.WriteLine("Hourly Rate: " + item.HourlyRate1.ToString());
                Console.WriteLine("Effective From: " + item.EffectiveFrom.ToShortDateString());
                Console.WriteLine("Effective To: " + item.EffectiveTo.ToShortDateString());
                Console.WriteLine("");
            }
        }
Exemplo n.º 2
0
        private static void DisplayBitemporal()
        {
            BitemporalExampleContext dbContext = new BitemporalExampleContext();
            var asAtDate    = new DateTime(2020, 2, 5, 10, 34, 0);
            var hourlyRates = dbContext.HourlyRate
                              .FromSqlRaw($"SELECT * FROM dbo.HourlyRate FOR SYSTEM_TIME AS OF {{0}}", asAtDate)
                              .Include(n => n.Employee)
                              .AsNoTracking()
                              .OrderBy(n => n.Employee.Name)
                              .ToList();

            Console.WriteLine("Bitemporal");
            Console.WriteLine("-----");

            foreach (var item in hourlyRates)
            {
                Console.WriteLine("Name: " + item.Employee.Name);
                Console.WriteLine("Hourly Rate: " + item.HourlyRate1.ToString());
                Console.WriteLine("Effective From: " + item.EffectiveFrom.ToShortDateString());
                Console.WriteLine("Effective To: " + item.EffectiveTo.ToShortDateString());
                Console.WriteLine("");
            }
        }