public CatalogueViewModel( IArticlePictureLocator articlePictureLocator, ICommandService <OpenWebPage> webBrowserService, ISearchSettingsProvider searchSettingsProvider, IArticleSearchEngine searchEngine) { if (articlePictureLocator == null) { throw new ArgumentNullException(nameof(articlePictureLocator)); } if (webBrowserService == null) { throw new ArgumentNullException(nameof(webBrowserService)); } if (searchSettingsProvider == null) { throw new ArgumentNullException(nameof(searchSettingsProvider)); } if (searchEngine == null) { throw new ArgumentNullException(nameof(searchEngine)); } this.articlePictureLocator = articlePictureLocator; this.webBrowserService = webBrowserService; this.searchSettingsProvider = searchSettingsProvider; this.searchEngine = searchEngine; SearchCommand = new RelayCommand(() => Search()); ShowSelectedArticleFluCommand = new RelayCommand(() => ShowSelectedArticleFlu()); InitPropertiesBoundToUI(); }
public PageComposer(INavigationService navigator) { if (navigator == null) { throw new ArgumentNullException(nameof(navigator)); } // initialisation des dépendances avec un cycle de vie de singleton this.navigator = navigator; fileService = new WindowsFileService(); articlePictureSettings = CreateArticlePictureSettings(); articlePictureNameFormatter = new ArticlePictureNameFormatter( articlePictureSettings); pictureLocator = new ArticlePictureLocator( fileService, articlePictureNameFormatter, articlePictureSettings); passwordHashGenerator = new PasswordHashGenerator(); passwordHashComparer = new PasswordHashComparer(); messageBoxDialogService = new MessageBoxDialogService(); CreatePictureFolderIfDoesNotExist(); CreateDatabaseIfDoesNotExist(); }
public GestionPhotosViewModel( IArticlePictureLocator locator, IArticlePictureUpdater updater, IFileDialogService fileDialogService, IArticleSearchEngine searchEngine) { if (locator == null) { throw new ArgumentNullException(nameof(locator)); } if (updater == null) { throw new ArgumentNullException(nameof(updater)); } if (fileDialogService == null) { throw new ArgumentNullException(nameof(fileDialogService)); } if (searchEngine == null) { throw new ArgumentNullException(nameof(searchEngine)); } this.locator = locator; this.updater = updater; this.fileDialogService = fileDialogService; this.searchEngine = searchEngine; SearchCommand = new RelayCommand(() => Search()); SelectNewPictureFileCommand = new RelayCommand(() => SelectNewPictureFile()); UpdateSelectedArticlePictureCommand = new RelayCommand(() => UpdateSelectedArticlePicture()); OpenPictureFolderCommand = new RelayCommand(() => OpenPictureFolder()); InitSearchSettings(); SearchResults = new ObservableCollection <Article>(); OnlySearchArticlesWithoutPicture = true; }