private void NewExecute(object obj)
 {
     SelectedConnectionType = new ConnectionTypeModel();
     SelectedConnectionType.ConnectionTypeAttributes = new ObservableCollection <AttributeDescriptionModel>();
     SideBar.AddItem(SelectedConnectionType);
     SideBar.SelectedItem = SelectedConnectionType;
     SaveCommand.NotifyCanExecuteChanged();
 }
Beispiel #2
0
        /// <summary>
        /// Get the connection type model.
        /// </summary>
        /// <param name="dataObjectTypeName">The Assembly Qualified Name of the data type model.</param>
        /// <param name="dataAccess">The data access instance.</param>
        /// <returns>The connection type model</returns>
        public static ConnectionTypeModel GetTypeModel(string dataObjectTypeName, Nequeo.Wpf.UI.DataAccess dataAccess)
        {
            ConnectionTypeModel connectionModel = new ConnectionTypeModel();

            connectionModel.ConnectionDataType = dataAccess.ConnectionTypeModel.ConnectionDataType;
            connectionModel.ConnectionType     = dataAccess.ConnectionTypeModel.ConnectionType;
            connectionModel.DataAccessProvider = dataAccess.ConnectionTypeModel.DataAccessProvider;
            connectionModel.DatabaseConnection = dataAccess.ConnectionTypeModel.DatabaseConnection;
            connectionModel.DataObjectTypeName = dataObjectTypeName;
            return(connectionModel);
        }
Beispiel #3
0
        /// <summary>
        /// Get the connection type model.
        /// </summary>
        /// <typeparam name="TDataModel">The data model type</typeparam>
        /// <param name="dataAccess">The data access instance.</param>
        /// <returns>The connection type model</returns>
        public static ConnectionTypeModel GetTypeModel <TDataModel>(Nequeo.Wpf.UI.DataAccess dataAccess)
        {
            ConnectionTypeModel connectionModel = new ConnectionTypeModel();

            connectionModel.ConnectionDataType = dataAccess.ConnectionTypeModel.ConnectionDataType;
            connectionModel.ConnectionType     = dataAccess.ConnectionTypeModel.ConnectionType;
            connectionModel.DataAccessProvider = dataAccess.ConnectionTypeModel.DataAccessProvider;
            connectionModel.DatabaseConnection = dataAccess.ConnectionTypeModel.DatabaseConnection;
            connectionModel.DataObjectTypeName = typeof(TDataModel).AssemblyQualifiedName;
            return(connectionModel);
        }
Beispiel #4
0
        /// <summary>
        /// Get the connection type model.
        /// </summary>
        /// <typeparam name="TDataModel">The data model type</typeparam>
        /// <typeparam name="TModel">The model type</typeparam>
        /// <param name="dataAccess">The data access instance.</param>
        /// <returns>The connection type model</returns>
        public static ConnectionTypeModel GetTypeModel <TDataModel, TModel>(IInsertDataGenericBase <TModel> dataAccess)
            where TModel : class, new()
        {
            ConnectionTypeModel connectionModel = new ConnectionTypeModel();

            connectionModel.ConnectionDataType = dataAccess.ConnectionDataType;
            connectionModel.ConnectionType     = dataAccess.ConnectionType;
            connectionModel.DataAccessProvider = dataAccess.DataAccessProvider.GetType().AssemblyQualifiedName;
            connectionModel.DatabaseConnection = dataAccess.ConfigurationDatabaseConnection;
            connectionModel.DataObjectTypeName = typeof(TDataModel).AssemblyQualifiedName;
            return(connectionModel);
        }
Beispiel #5
0
        /// <summary>
        /// Get the connection type model.
        /// </summary>
        /// <typeparam name="TDataContext">The data context type</typeparam>
        /// <typeparam name="TLinqEntity">The model type</typeparam>
        /// <param name="dataAccess">The data access instance.</param>
        /// <param name="connectionConfigKey">The database connection configuration key.</param>
        /// <returns>The connection type model</returns>
        public static ConnectionTypeModel GetTypeModel <TDataContext, TLinqEntity>(IEdmDataGenericBase <TDataContext, TLinqEntity> dataAccess, string connectionConfigKey)
            where TDataContext : System.Data.Entity.DbContext, new()
            where TLinqEntity : class, new()
        {
            ConnectionTypeModel connectionModel = new ConnectionTypeModel();

            connectionModel.ConnectionDataType = dataAccess.ConnectionDataType;
            connectionModel.ConnectionType     = dataAccess.ConnectionType;
            connectionModel.DataAccessProvider = dataAccess.DataAccessProvider.GetType().AssemblyQualifiedName;
            connectionModel.DatabaseConnection = connectionConfigKey;
            connectionModel.DataObjectTypeName = typeof(TLinqEntity).AssemblyQualifiedName;
            return(connectionModel);
        }
Beispiel #6
0
        /// <summary>
        /// The control starts to load.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ConnectionTypeControlDesigner_Load(object sender, EventArgs e)
        {
            // Get the enum values list items for connection type
            // and connection data type.
            string[] connectionType     = Enum.GetNames(typeof(Nequeo.Data.DataType.ConnectionContext.ConnectionType));
            string[] connectionDataType = Enum.GetNames(typeof(Nequeo.Data.DataType.ConnectionContext.ConnectionDataType));

            // Add the collection.
            cboConnectionType.Items.AddRange(connectionType);
            cboConnectionDataType.Items.AddRange(connectionDataType);

            // If the connection type model
            // is not null
            if (_connectionTypeModel != null)
            {
                // Assign the selected value.
                cboConnectionType.SelectedValue     = _connectionTypeModel.ConnectionType.ToString();
                cboConnectionDataType.SelectedValue = _connectionTypeModel.ConnectionDataType.ToString();

                // Set the selected index for each type.
                cboConnectionType.SelectedIndex     = connectionType.FindIndex(u => u == _connectionTypeModel.ConnectionType.ToString());
                cboConnectionDataType.SelectedIndex = connectionDataType.FindIndex(u => u == _connectionTypeModel.ConnectionDataType.ToString());

                // Assign the text values.
                txtDatabaseConnection.Text = _connectionTypeModel.DatabaseConnection;
                txtDataObjectTypeName.Text = _connectionTypeModel.DataObjectTypeName;
                txtDataAccessProvider.Text = _connectionTypeModel.DataAccessProvider;
            }
            else
            {
                // Create a new instance and assign the data types.
                _connectionTypeModel                = new ConnectionTypeModel();
                cboConnectionType.SelectedValue     = (_connectionTypeModel.ConnectionType = Nequeo.Data.DataType.ConnectionContext.ConnectionType.None).ToString();
                cboConnectionDataType.SelectedValue = (_connectionTypeModel.ConnectionDataType = Nequeo.Data.DataType.ConnectionContext.ConnectionDataType.None).ToString();
                cboConnectionType.SelectedIndex     = 0;
                cboConnectionDataType.SelectedIndex = 0;
            }
        }
Beispiel #7
0
 /// <summary>
 /// Default constructor
 /// </summary>
 /// <param name="connectionTypeModel">The connection type data model container.</param>
 public ConnectionTypeControlDesigner(ConnectionTypeModel connectionTypeModel)
 {
     InitializeComponent();
     _connectionTypeModel = connectionTypeModel;
 }
        public async Task <BlResult <ConnectionTypeModel> > SaveAsync(ConnectionTypeModel connectionTypeModel)
        {
            BlResult <ConnectionTypeModel> blResult = new BlResult <ConnectionTypeModel>();

            try
            {
                if (connectionTypeModel is null)
                {
                    throw new ArgumentException();
                }

                EnsureTransaction();

                var fetchedEntity = await _connectionTypeRepository.GetByIdAsync(connectionTypeModel.Id);

                fetchedEntity = _mapper.Map(connectionTypeModel, fetchedEntity);
                var attributesToDelete = fetchedEntity.ConnectionTypeAttributes.
                                         Where(x => !connectionTypeModel.ConnectionTypeAttributes.Any(y => y.Id == x.Id)).ToList();
                var attributesToAdd = connectionTypeModel.ConnectionTypeAttributes.
                                      Where(x => !fetchedEntity.ConnectionTypeAttributes.Any(y => y.Id == x.Id)).Select(z => z.Id);

                if (connectionTypeModel.Id > 0)
                {
                    _connectionTypeRepository.Edit(fetchedEntity);
                }
                else
                {
                    fetchedEntity = _connectionTypeRepository.Add(fetchedEntity);
                }

                await SaveChangesAsync(false);

                if (attributesToDelete != null && attributesToDelete.Count() > 0)
                {
                    foreach (var item in attributesToDelete)
                    {
                        fetchedEntity.ConnectionTypeAttributes.Remove(item);
                    }
                    await SaveChangesAsync(false);
                }

                if (attributesToAdd != null && attributesToAdd.Count() > 0)
                {
                    await _connectionTypeRepository.AddAttribuets(fetchedEntity, attributesToAdd);
                    await SaveChangesAsync(false);
                }

                await SaveChangesAsync();

                blResult.Success(_mapper.Map <ConnectionTypeModel>(fetchedEntity));
            }
            catch (ArgumentException)
            {
                blResult.Fail(ConstDictionary.CantSaveNullModel);
            }
            catch (Exception ex)
            {
                blResult.Fail(ex);
            }

            return(blResult);
        }
 private void SelectExecute(ConnectionTypeModel obj)
 {
     SelectedConnectionType = obj;
 }