Exemple #1
0
        public async Task InitilizeAsync()
        {
            // "Idle.DataAccess"
            var languageImageProvider = new ImagesProvider();
            var languagesFactory      = new LanguagesFactory(languageImageProvider);
            var languageMigrator      = new LanguageMigrator(languagesFactory);
            await languageMigrator.MigrateAsync();

            var languagesRepository = new LanguagesRepository();

            // "Idle.Services"
            var navigation        = new Lazy <INavigation>(() => Application.Current.MainPage.Navigation);
            var navigationService = new NavigationService(navigation);

            // "Idle.Logic" and "Idle.Views"
            var mainPage = SetBindingContext(new MainPage(), new MainPageViewModel(navigationService));

            navigationService.Register <MainPageViewModel>(() => mainPage);

            navigationService.Register <LanguagesViewModel>(() =>
                                                            SetBindingContext(new LanguagesPage(), new LanguagesViewModel(languagesRepository)));

            navigationService.Register <LanguageMarketViewModel>(() =>
                                                                 SetBindingContext(new LanguageMarket(), new LanguageMarketViewModel(languagesRepository)));

            // Idle.Views
            MainPage = new NavigationPage(mainPage);
        }
Exemple #2
0
        private (LanguageMigrator Migrator, SQLiteAsyncConnection Connection) Setup()
        {
            var imagesProvider  = new ImagesProvider();
            var langagesFactory = new LanguagesFactory(imagesProvider);
            var connection      = new SQLiteAsyncConnection(":memory:");
            var migrator        = new LanguageMigrator(langagesFactory, connection);

            return(migrator, connection);
        }
        private async Task <LanguagesRepository> SetupAsync()
        {
            var connection = new SQLiteAsyncConnection(":memory:");

            var imagesProvider   = new ImagesProvider();
            var languagesFactory = new LanguagesFactory(imagesProvider);
            var migrator         = new LanguageMigrator(languagesFactory, connection);
            await migrator.MigrateAsync();

            var repo = new LanguagesRepository(connection);

            return(repo);
        }