public void TestAddChild() { IStore store = new ThreadStaticStore(); IDbContextFactory contextFactory = new DbContextFactory(); using (UnitOfWork unitwork = new UnitOfWork(store, contextFactory)) { IRepository<Demo, Guid> demoRepository = new Repository<Demo, Guid>(store); IRepository<DemoChild, Guid> demoChildRepository = new Repository<DemoChild, Guid>(store); IRepository<DemoBrother, Guid> demoBrotherRepository = new Repository<DemoBrother, Guid>(store); Demo demo = new Demo() { Name = "C" }; DemoChild child = new DemoChild(); demo.Children.Add(child); DemoBrother brother = new DemoBrother(); demo.Brothers.Add(brother); demoRepository.SaveOrUpdate(demo); demoChildRepository.SaveOrUpdate(child); demoBrotherRepository.SaveOrUpdate(brother); unitwork.SaveChanges(); } }
public void TestData() { IStore store = new ThreadStaticStore(); IDbContextFactory contextFactory = new DbContextFactory(); using (UnitOfWork unitwork = new UnitOfWork(store, contextFactory)) { IRepository<Demo,Guid> demoRepository = new Repository<Demo,Guid>(store); Demo demo = new Demo() { Name = "B"}; demoRepository.SaveOrUpdate(demo); unitwork.SaveChanges(); } }
public void TestData() { using (UnitOfWork unitwork = ServiceLocator.Current.GetInstance<UnitOfWork>()) { IRepository<Demo,Guid> demoRepository = ServiceLocator.Current.GetInstance<IRepository<Demo,Guid>>(); Demo demo = new Demo() { Name = "C" }; demoRepository.SaveOrUpdate(demo); unitwork.SaveChanges(); } }
public void TestEvent() { IEventHandlesRegistry eventHandlesRegistry = new UnityHandlesRegistry(container); eventHandlesRegistry.Register<DemoAddEvent, HandleDemoAdd>(); using (UnitOfWork unitwork = ServiceLocator.Current.GetInstance<UnitOfWork>()) { IRepository<Demo,Guid> demoRepository = ServiceLocator.Current.GetInstance<IRepository<Demo,Guid>>(); Demo demo = new Demo() { Name = "D" }; demoRepository.SaveOrUpdate(demo); DomainEvent<DemoAddEvent> demoAddEvent = new DomainEvent<DemoAddEvent>(eventHandlesRegistry); demoAddEvent.Raise(new DemoAddEvent(demo.Id)); unitwork.SaveChanges(); } }
public void TestStore() { ThreadStaticStore store = new ThreadStaticStore(); Demo demo = new Demo(); store.Put("1", demo); Assert.AreEqual(demo, store.Get<Demo>("1")); }