Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Arrange
- var container = new Container();
- container.Register<ICommand, ConcreteCommand>(new AsyncScopedLifestyle());
- container.Register<IDBContext, ConcreteDbContext>(new AsyncScopedLifestyle("dbContext"));
- using (AsyncScopedLifestyle.BeginScope(container))
- {
- // Act
- var iCommandInstance1 = container.GetInstance<ICommand>();
- IDBContext iDbContextInstance1 = null;
- IDBContext iDbContextInstance2 = null;
- using (AsyncScopedLifestyle.BeginScope(container, "dbContext"))
- {
- var iCommandInstance2 = container.GetInstance<ICommand>();
- iDbContextInstance1 = container.GetInstance<IDBContext>();
- // Assert
- Assert.IsTrue(object.ReferenceEquals(iCommandInstance1, iCommandInstance2));
- }
- using (AsyncScopedLifestyle.BeginScope(container, "dbContext"))
- {
- var iCommandInstance3 = container.GetInstance<ICommand>();
- iDbContextInstance2 = container.GetInstance<IDBContext>();
- // Assert
- Assert.IsTrue(object.ReferenceEquals(iCommandInstance1, iCommandInstance3));
- }
- Assert.IsFalse(object.ReferenceEquals(iDbContextInstance1, iDbContextInstance2));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement