public void OracleDateType_WillWork() { using (var sf = NhibernateConfiguration.CreateSessionFactory()) using (var session = sf.OpenSession()) { var date = new DateTime(2017, 6, 8, 12, 10, 59); var entity = new OptimizedEntity { Id = "123456", SomeDate = date }; session.Save(entity); session.Flush(); session.Clear(); session.QueryOver <SlowEntity>() .Where(x => x.SomeDate == date) .SingleOrDefault().Id.Should().Be(entity.Id); session.Delete(entity); session.Flush(); session.Clear(); session.QueryOver <SlowEntity>() .Where(x => x.SomeDate == date) .List().Should().BeEmpty(); } }
public void SpeedTest() { Console.WriteLine("Starting OptimizedEntity"); using (var sf = NhibernateConfiguration.CreateSessionFactory()) using (var session = sf.OpenSession()) { var sw = Stopwatch.StartNew(); RepeatAction(() => { session.QueryOver <OptimizedEntity>() .Where(x => x.SomeDate == DateTime.Now) .List(); }); Console.WriteLine("ElapsedMilliseconds: " + sw.ElapsedMilliseconds); } Console.WriteLine("Starting SlowEntity"); using (var sf = NhibernateConfiguration.CreateSessionFactory()) using (var session = sf.OpenSession()) { var sw = Stopwatch.StartNew(); RepeatAction(() => { session.QueryOver <SlowEntity>() .Where(x => x.SomeDate == DateTime.Now) .List(); }); Console.WriteLine("ElapsedMilliseconds: " + sw.ElapsedMilliseconds); } }