Exemple #1
0
        public TableMappingViewModel(TableMapping tableMapping, MappingPageViewModel mappingPageViewModel)
        {
            this.viewModel = mappingPageViewModel;

            ObservableCollection <ColumnMappingViewModel> viewModels = new ObservableCollection <ColumnMappingViewModel>();

            foreach (DBColumn column in tableMapping.DestinationTable.Columns)
            {
                ColumnMapping columnMapping = tableMapping.ColumnMappings.Where(c => c.DestinationColumn == column).FirstOrDefault();
                if (columnMapping == null)
                {
                    columnMapping = new NullColumnMapping(column, tableMapping.AllowedColumnUses()[0]);
                }
                viewModels.Add(ColumnMappingViewModelCreator.CreateFromColumnMapping(columnMapping, this));
            }

            ColumnMapping[] columnMappings = viewModels.Select(v => v.ColumnMapping).ToArray();
            tableMapping.ColumnMappings = columnMappings;

            this.tableMapping             = tableMapping;
            this.columnsMappingViewModels = viewModels.ToList();
        }