Пример #1
0
    internal void GenerateModel( AdvancedWizardForm wiz )
    {
      if (wiz.ForeignKeys != null)
        wiz.ForeignKeys.Clear();
      _table = wiz.TableName;
      _connectionString = wiz.Connection.ConnectionString;
      _columns = BaseWizard<BaseWizardForm, WindowsFormsCodeGeneratorStrategy>.GetColumnsFromTable(_table, wiz.Connection);

      var wizardForeignKeys = wiz.ForeignKeys;
      wiz.Wizard.RetrieveAllFkInfo(wiz.Connection, _table, out wizardForeignKeys);
      wiz.ForeignKeys = wizardForeignKeys;
      _colValidations = ValidationsGrid.GetColumnValidationList(_table, _columns, wiz.ForeignKeys);
    }
        internal override void OnStarting(BaseWizardForm wizard)
        {
            AdvancedWizardForm wiz = (AdvancedWizardForm)wizard;

            // Populate grid
            grdColumnsDetail.DataSource = null;
            GenerateModel(wiz);
            ValidationsGrid.LoadGridColumns(grdColumnsDetail, wiz.Connection, _detailTable, _colValidationsDetail, _detailColumns, wiz.DetailForeignKeys);
            lblTitleDetail.Text = string.Format("Setup the validations for the columns in the table {0}", _detailTable);
            _colValsByName      = new Dictionary <string, ColumnValidation>();
            for (int i = 0; i < _colValidationsDetail.Count; i++)
            {
                _colValsByName.Add(_colValidationsDetail[i].Name, _colValidationsDetail[i]);
            }
        }
        /// <summary>
        /// Generates the detail tables definition based on the master-detail data of the model, getting the detail foreign keys as well.
        /// </summary>
        private void GenerateDetailModelsForItemTemplates()
        {
            if (DetailForeignKeys != null)
            {
                DetailForeignKeys.Clear();
            }

            _detailTable = _detailEntity;
            if (string.IsNullOrEmpty(_detailTable))
            {
                return;
            }

            _detailColumns = BaseWizard <BaseWizardForm, WindowsFormsCodeGeneratorStrategy> .GetColumnsFromTable(_detailTable, _connection);

            ItemTemplateUtilities.RetrieveAllFkInfo(_connection, _detailTable, out DetailForeignKeys);
            _colValidationsDetail = ValidationsGrid.GetColumnValidationList(_detailTable, _detailColumns, DetailForeignKeys);
        }
Пример #4
0
 internal void InitializeColumnMappings(Dictionary <string, ForeignKeyColumnInfo> fks)
 {
     foreach (KeyValuePair <string, ForeignKeyColumnInfo> kvp in fks)
     {
         string fkTableName = kvp.Value.ReferencedTableName;
         if (string.IsNullOrEmpty(fkTableName))
         {
             continue;
         }
         if (ColumnMappings.ContainsKey(fkTableName))
         {
             continue;
         }
         Dictionary <string, Column> dicCols          = GetColumnsFromTable(fkTableName, WizardForm.Connection);
         List <ColumnValidation>     myColValidations = ValidationsGrid.GetColumnValidationList(fkTableName, dicCols, null);
         ColumnMappings.Add(fkTableName, myColValidations.ToDictionary(p => { return(p.Name); }));
     }
 }
        /// <summary>
        /// Generates the tables and columns based on the model information. Also, it gets the foreign keys data.
        /// </summary>
        private void GenerateModelsForItemTemplates()
        {
            if (_columns == null || _columns.Count == 0)
            {
                if (ForeignKeys != null)
                {
                    ForeignKeys.Clear();
                }

                _table   = _selectedEntity;
                _columns = BaseWizard <BaseWizardForm, WindowsFormsCodeGeneratorStrategy> .GetColumnsFromTable(_table, _connection);

                ItemTemplateUtilities.RetrieveAllFkInfo(_connection, _table, out ForeignKeys);
                _colValidations = ValidationsGrid.GetColumnValidationList(_table, _columns, ForeignKeys);
            }

            if ((_GuiType == Wizards.GuiType.MasterDetail) && ((_detailColumns == null) || (_detailColumns.Count == 0)))
            {
                GenerateDetailModelsForItemTemplates();
            }
        }
        internal void GenerateModel(AdvancedWizardForm wiz)
        {
            if (wiz.DetailForeignKeys != null)
            {
                wiz.DetailForeignKeys.Clear();
            }
            _connectionString = wiz.Connection.ConnectionString;
            _detailTable      = wiz.DetailTableName;
            if (string.IsNullOrEmpty(_detailTable))
            {
                return;
            }
            _detailColumns = BaseWizard <BaseWizardForm, WindowsFormsCodeGeneratorStrategy> .GetColumnsFromTable(_detailTable, wiz.Connection);

            var wizardDetailForeignKeys = wiz.DetailForeignKeys;

            wiz.Wizard.RetrieveAllFkInfo(wiz.Connection, _detailTable, out wizardDetailForeignKeys);
            wiz.DetailForeignKeys = wizardDetailForeignKeys;

            _colValidationsDetail = ValidationsGrid.GetColumnValidationList(_detailTable, _detailColumns, wiz.DetailForeignKeys);
        }