protected override void RegisterTypes(IContainerRegistry containerRegistry) { if (containerRegistry.IsRegistered <IFileDialogService>() == false) { containerRegistry.Register <IFileDialogService, XamarinFileDialogService>(); } if (containerRegistry.IsRegistered <IDataserviceProvider>() == false) { var deviceInfo = Container.Resolve <IDeviceInfoService>(); var fileSystemService = Container.Resolve <IFileSystemService>(); var cruiseDbPath = fileSystemService.DefaultCruiseDatabasePath; if (File.Exists(cruiseDbPath) == false) { var newDb = new CruiseDatastore_V3(cruiseDbPath, true); } _dataserviceProvider = new DataserviceProvider(cruiseDbPath, deviceInfo); _dataserviceProvider.RegisterDataservices(containerRegistry); containerRegistry.RegisterInstance <IDataserviceProvider>(_dataserviceProvider); } if (containerRegistry.IsRegistered <ICruisersDataservice>() == false) { containerRegistry.RegisterInstance <ICruisersDataservice>(_cruisersDataservice = new CruisersDataservice(this)); } }
//private IContainerExtension Container { get; } public XamarinCruiseDialogService(IApplicationProvider applicationProvider, //IContainerExtension container, IDataserviceProvider datastoreProvider, ICruisersDataservice cruisersDataservice) { DatastoreProvider = datastoreProvider; ApplicationProvider = applicationProvider; CruisersDataservice = cruisersDataservice; //Container = container; }
public ManageCruisersViewModel(ICruisersDataservice cruisersDataservice) { CruisersDataservice = cruisersDataservice ?? throw new ArgumentNullException(nameof(cruisersDataservice)); }