private void InitializePropertiesForViewing() { if (this is IImportJobOverviewStepViewModel || IsSingleDialogEditing) { if (AllAvailableEntityImporters == null) { AllAvailableEntityImporters = new EntityImporterBase[] { new ItemImporter("Product"), new ItemImporter("Sku"), new ItemImporter("Bundle"), new ItemImporter("Package"), new ItemImporter("DynamicKit"), new CategoryImporter(), new AssociationImporter(), new PriceImporter() }; //AllAvailableEntityImporters = new string[] { "Product", "Sku", "Bundle", "Package", "Dynamickit", "Category", "Association", "Price" }; OnPropertyChanged("AllAvailableEntityImporters"); AllAvailableColumnDelimiters = GetColumnDelimiters(); OnPropertyChanged("AllAvailableColumnDelimiters"); } if (AllAvailableCatalogs == null) { AllAvailableCatalogs = _catalogRepository.Catalogs.ToArray(); OnPropertyChanged("AllAvailableCatalogs"); } if (AllAvailablePropertySets == null) { AllAvailablePropertySets = _catalogRepository.PropertySets.ToArray(); //.Where(x => x.CatalogId == InnerItem.ContainerId && x.TargetType == InnerItem.EntityImporter).ToArray(); OnPropertyChanged("AllAvailablePropertySets"); } //InnerItem.PropertyChanged += InnerItem_PropertyChanged; //if (AllAvailableCurrencies == null) //{ // AllAvailableCurrencies = ImportJobViewModel.GetAvailableCurrencies(); // OnPropertyChanged("AllAvailableCurrencies"); //} if (InnerItem.EntityImporter != null) { SelectedEntityImporter = AllAvailableEntityImporters.First(x => x.Name == InnerItem.EntityImporter); } else { SelectedEntityImporter = AllAvailableEntityImporters.First(); } //SelectedColumnMapping = InnerItem.ColumnMapping; //InnerItem.PropertyChanged += InnerItem_PropertyChanged; } if (this is IImportJobMappingStepViewModel || IsSingleDialogEditing) { } }
public void InitializeForOpen() { // initialize if needed if (InnerItem == _originalItem) { IsInitializing = true; DetachEventListeners(); // Load complete item here _originalItem = LoadItem(_originalItem.ImportJobId); InnerItem = _originalItem.DeepClone(_entityFactory as IKnownSerializationTypes); // current workaround for repository crash //ItemRepository = Container.Resolve<IImportRepository>(); _itemRepository.Attach(InnerItem); InitializePropertiesForViewing(); if (InnerItem.EntityImporter != null) { SelectedEntityImporter = AllAvailableEntityImporters.First(x => x.Name == InnerItem.EntityImporter); } else { SelectedEntityImporter = AllAvailableEntityImporters.First(); } CsvFileColumns = GetCsvColumns(InnerItem.TemplateId); InnerItem.PropertyChanged += CurrentItem_PropertyChanged; //OnUIThread(() => //{ //}); } }