@@ -42,55 +42,55 @@ static ViewModelLocator()
4242 {
4343 _container = new TinyIoCContainer ( ) ;
4444
45- // View models
45+ // View models - by default, TinyIoC will register concrete classes as multi-instance.
4646 _container . Register < BasketViewModel > ( ) ;
4747 _container . Register < CatalogViewModel > ( ) ;
4848 _container . Register < CheckoutViewModel > ( ) ;
49- _container . Register < LoginViewModel > ( ) ;
49+ _container . Register < LoginViewModel > ( ) . AsSingleton ( ) ;
5050 _container . Register < MainViewModel > ( ) ;
5151 _container . Register < OrderDetailViewModel > ( ) ;
5252 _container . Register < ProfileViewModel > ( ) ;
5353 _container . Register < SettingsViewModel > ( ) ;
5454 _container . Register < CampaignViewModel > ( ) ;
5555 _container . Register < CampaignDetailsViewModel > ( ) ;
5656
57- // Services
58- _container . Register < INavigationService , NavigationService > ( ) . AsSingleton ( ) ;
57+ // Services - by default, TinyIoC will register interface registrations as singletons.
58+ _container . Register < INavigationService , NavigationService > ( ) ;
5959 _container . Register < IDialogService , DialogService > ( ) ;
6060 _container . Register < IOpenUrlService , OpenUrlService > ( ) ;
6161 _container . Register < IIdentityService , IdentityService > ( ) ;
62- _container . Register < IRequestProvider , RequestProvider > ( ) ;
62+ _container . Register < IRequestProvider , RequestProvider > ( ) . AsMultiInstance ( ) ;
6363 _container . Register < IDependencyService , Services . Dependency . DependencyService > ( ) ;
64- _container . Register < ISettingsService , SettingsService > ( ) . AsSingleton ( ) ;
65- _container . Register < IFixUriService , FixUriService > ( ) . AsSingleton ( ) ;
66- _container . Register < ILocationService , LocationService > ( ) . AsSingleton ( ) ;
67- _container . Register < ICatalogService , CatalogMockService > ( ) . AsSingleton ( ) ;
68- _container . Register < IBasketService , BasketMockService > ( ) . AsSingleton ( ) ;
69- _container . Register < IOrderService , OrderMockService > ( ) . AsSingleton ( ) ;
70- _container . Register < IUserService , UserMockService > ( ) . AsSingleton ( ) ;
71- _container . Register < ICampaignService , CampaignMockService > ( ) . AsSingleton ( ) ;
64+ _container . Register < ISettingsService , SettingsService > ( ) ;
65+ _container . Register < IFixUriService , FixUriService > ( ) ;
66+ _container . Register < ILocationService , LocationService > ( ) ;
67+ _container . Register < ICatalogService , CatalogMockService > ( ) ;
68+ _container . Register < IBasketService , BasketMockService > ( ) ;
69+ _container . Register < IOrderService , OrderMockService > ( ) ;
70+ _container . Register < IUserService , UserMockService > ( ) ;
71+ _container . Register < ICampaignService , CampaignMockService > ( ) ;
7272 }
7373
7474 public static void UpdateDependencies ( bool useMockServices )
7575 {
7676 // Change injected dependencies
7777 if ( useMockServices )
7878 {
79- _container . Register < ICatalogService , CatalogMockService > ( ) . AsSingleton ( ) ;
80- _container . Register < IBasketService , BasketMockService > ( ) . AsSingleton ( ) ;
81- _container . Register < IOrderService , OrderMockService > ( ) . AsSingleton ( ) ;
82- _container . Register < IUserService , UserMockService > ( ) . AsSingleton ( ) ;
83- _container . Register < ICampaignService , CampaignMockService > ( ) . AsSingleton ( ) ;
79+ _container . Register < ICatalogService , CatalogMockService > ( ) ;
80+ _container . Register < IBasketService , BasketMockService > ( ) ;
81+ _container . Register < IOrderService , OrderMockService > ( ) ;
82+ _container . Register < IUserService , UserMockService > ( ) ;
83+ _container . Register < ICampaignService , CampaignMockService > ( ) ;
8484
8585 UseMockService = true ;
8686 }
8787 else
8888 {
89- _container . Register < ICatalogService , CatalogService > ( ) . AsSingleton ( ) ;
90- _container . Register < IBasketService , BasketService > ( ) . AsSingleton ( ) ;
91- _container . Register < IOrderService , OrderService > ( ) . AsSingleton ( ) ;
92- _container . Register < IUserService , UserService > ( ) . AsSingleton ( ) ;
93- _container . Register < ICampaignService , CampaignService > ( ) . AsSingleton ( ) ;
89+ _container . Register < ICatalogService , CatalogService > ( ) ;
90+ _container . Register < IBasketService , BasketService > ( ) ;
91+ _container . Register < IOrderService , OrderService > ( ) ;
92+ _container . Register < IUserService , UserService > ( ) ;
93+ _container . Register < ICampaignService , CampaignService > ( ) ;
9494
9595 UseMockService = false ;
9696 }
0 commit comments