示例#1
0
        private void btnSearch_Click(object sender, EventArgs e)
        {
            var userEntity = new UserEntity();

            var queryConditions = new QueryConditionsBuilder();

            if (txtTextToSearch.Text != "")
            {
                queryConditions.AddQueryCondition("name", EConditionTypes.Like, new object[] { "%" + txtTextToSearch.Text + "%" });
            }

            if (!rbAll.Checked)
            {
                queryConditions.AddQueryCondition("active", EConditionTypes.Equals, new object[] { rbOnlyActives.Checked ? 1 : 0 });
            }

            if ((cmbTypeFilter.SelectedIndex != -1) && (txtFilterValue.Text != ""))
            {
                EConditionTypes conditionType;

                if ((string)cmbTypeFilter.SelectedItem == ">")
                {
                    conditionType = EConditionTypes.MoreThan;
                }
                else if ((string)cmbTypeFilter.SelectedItem == ">=")
                {
                    conditionType = EConditionTypes.MoreThanOrEquals;
                }
                else if ((string)cmbTypeFilter.SelectedItem == "=")
                {
                    conditionType = EConditionTypes.Equals;
                }
                else if ((string)cmbTypeFilter.SelectedItem == "!=")
                {
                    conditionType = EConditionTypes.Not;
                }
                else if ((string)cmbTypeFilter.SelectedItem == "<")
                {
                    conditionType = EConditionTypes.LessThan;
                }
                else if ((string)cmbTypeFilter.SelectedItem == ">=")
                {
                    conditionType = EConditionTypes.LessThanOrEquals;
                }
                else
                {
                    conditionType = EConditionTypes.Equals;
                }

                queryConditions.AddQueryCondition("userId", conditionType, new object[] { txtFilterValue.Text });
            }

            dgvRegisters.DataSource = ConvORMHelper.ConvertListToDataTable(userEntity.Find(queryConditions));
            dgvRegisters.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
        }
示例#2
0
        public IList Find(QueryConditionsBuilder conditionsBuilder)
        {
            var userRepository = new Repository();

            try
            {
                return(userRepository.Find(this, conditionsBuilder));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                throw;
            }
        }
示例#3
0
        public Entity Insert()
        {
            var commandBuilder = new CommandFactory(_modelEntity, EConnectionDriverTypes.ecdtMySql);

            if (_connection.ConnectionDriver()
                .ExecuteCommand(commandBuilder.GetSqlInsert(out var parametersValues), parametersValues) > 0)
            {
                var lastInsertedId    = _connection.ConnectionDriver().GetLastInsertedId();
                var conditionsBuilder = new QueryConditionsBuilder();
                foreach (var column in _modelEntity.GetPrimaryFields())
                {
                    conditionsBuilder.AddQueryCondition(column.ColumnName, EConditionTypes.Equals,
                                                        new object[] { lastInsertedId });
                }

                return(_connection.ConnectionDriver().ExecuteScalarQuery(commandBuilder.GetSqlSelect(conditionsBuilder),
                                                                         _modelEntity.EntityType));
            }
示例#4
0
        private ICommandUpdateBuilder GetCommandUpdateBuilder(QueryConditionsBuilder queryConditionsBuilder)
        {
            switch (_eConnectionDriver)
            {
            case EConnectionDriverTypes.ecdtFirebird:
                return(null);

            case EConnectionDriverTypes.ecdtMySql:
                return(new MySqlCommandUpdateBuilder(_modelEntity, queryConditionsBuilder));

            case EConnectionDriverTypes.ecdtPostgreeSQL:
                return(null);

            case EConnectionDriverTypes.ecdtSQLServer:
                return(null);

            case EConnectionDriverTypes.ecdtNone:
                return(null);

            default:
                return(null);
            }
        }
示例#5
0
        internal string GetSqlUpdate(out Dictionary <string, object> parametersValues, QueryConditionsBuilder queryConditionsBuilder)
        {
            var commandUpdateBuilder = GetCommandUpdateBuilder(queryConditionsBuilder);

            return(commandUpdateBuilder.GetSqlUpdate(out parametersValues));
        }
示例#6
0
        internal string GetSqlSelect(QueryConditionsBuilder queryConditionsBuilder)
        {
            var commandSelectBuilder = GetCommandSelectBuilder(queryConditionsBuilder);

            return(commandSelectBuilder.GetSqlSelect());
        }
 public MySqlCommandUpdateBuilder(ModelEntity model, QueryConditionsBuilder queryConditionsBuilder)
 {
     _modelEntity            = model;
     _queryConditionsBuilder = queryConditionsBuilder;
 }
示例#8
0
 public IList Find(Entity entity, QueryConditionsBuilder conditionsBuilder)
 {
     return(DataTransferorFactory.GetDataTransferor(Converter.EntityToModelEntity(entity)).Find(conditionsBuilder));
 }
示例#9
0
 public MySqlCommandSelectBuilder(ModelEntity model, QueryConditionsBuilder queryConditions)
 {
     _modelEntity            = model;
     _queryConditionsBuilder = queryConditions;
 }