public async Task DisplayAsync <T>(params object[] initParams)
            where T : IDisplayableViewModel
        {
            var target = await _viewModelFactory.CreateAsync <T>(initParams);

            _displayConfigService.OnDisplay(target);
        }
예제 #2
0
        public async Task NavigateToAsync <T>()
            where T : IViewModel
        {
            var target = await _containerViewModelBaseFactory.CreateAsync <T>();

            await NavigateToAsync(target);
        }
예제 #3
0
        public async Task NavigateToFileTagEditAsync(Maybe <string> id)
        {
            var viewModel = await _viewModelFactory.CreateAsync <FileTagEditViewModel>();

            await viewModel.InitializeAsync(id);

            await _navigationService.NavigateToAsync(viewModel);
        }
예제 #4
0
        public async Task <IndividualDetailsViewData> LoadAsync(string id)
        {
            var individual = await _individualRepository.LoadByIdAsync(id);

            var viewData = await _viewModelFactory.CreateAsync <IndividualDetailsViewData>();

            viewData.Birthdate = individual.Birthdate;
            viewData.FirstName = individual.FirstName;
            viewData.Id        = individual.Id;
            viewData.LastName  = individual.LastName;

            return(viewData);
        }
        public async Task EditFileAsync(string filePath)
        {
            var viewModel = await _viewModelFactory.CreateAsync <FileEditViewModel>();

            var fileDto = await _fileService.LoadFileAsync(filePath);

            await viewModel.InitializeFileAsync(fileDto);

            var view = new FileEditView {
                DataContext = viewModel
            };

            view.ShowDialog();
        }
예제 #6
0
        public async Task <IActionResult> GetAllAsync(FilterSelectedOptionsViewModel selectedOptions)
        {
            var toursQuery = _mapper.Map <FilterSelectedOptionsViewModel, GetToursQuery>(selectedOptions);
            var tourDtos   = await _mediator.Send(toursQuery);

            var tourViewModels  = _mapper.Map <IEnumerable <TourDto>, IEnumerable <TourCatalogItemViewModel> >(tourDtos);
            var filterViewModel = await _filterViewModelFactory.CreateAsync(selectedOptions);

            var catalog = new TourCatalogViewModel
            {
                Items  = tourViewModels,
                Filter = filterViewModel
            };

            return(View("Index", catalog));
        }
예제 #7
0
        public async Task <IReadOnlyCollection <NavigationEntry> > CreateAllAsync()
        {
            var navigatableViewModelTypes =
                _serviceLocator
                .GetAllServices <IViewModel>()
                .OfType <INavigatableViewModel>()
                .Select(f => f.GetType())
                .ToList();

            var tasks = navigatableViewModelTypes.Select(type => _viewModelFactory.CreateAsync(type));
            var navigationViewModels = await Task.WhenAll(tasks);

            var result = navigationViewModels
                         .Cast <INavigatableViewModel>()
                         .OrderBy(f => f.NavigationSequence)
                         .Select(CreateNavigationEntry)
                         .ToList();

            return(result);
        }
예제 #8
0
        public async Task <IActionResult> CreateAsync()
        {
            var modifyTourViewModel = await _modifyTourViewModelFactory.CreateAsync(new ModifyTourViewModel());

            return(View("Create", modifyTourViewModel));
        }
예제 #9
0
        public async Task InitializeAsync()
        {
            Level1Sub1ViewModel = await _viewModelFactory.CreateAsync <Level1Sub1ViewModel>();

            Level1Sub2ViewModel = await _viewModelFactory.CreateAsync <Level1Sub2ViewModel>();
        }