public override ITransactionalCommand GetCommand()
        {
            ITransactionalCommand command = base.GetCommand(false);

            FeedParameters(command);
            return(command);
        }
Пример #2
0
            public ITransactionalCommand GetCommandTransactional(bool createTransaction)
            {
                ITransactionalCommand command = this.GetCommand(createTransaction);

                CreateParameters(command.Command);
                return(command);
            }
Пример #3
0
        protected string ParametersToString <T>(ITransactionalCommand command)
        {
            var msg = "<" + typeof(T).Name + "> \t";

            foreach (var p in command.Command.Parameters.OfType <IDataParameter>())
            {
                msg += p.ParameterName + " = " + (p.Value ?? "<null>") + ",\t";
            }
            return(msg);
        }
Пример #4
0
 protected void Commit(ITransactionalCommand command)
 {
     if (CommitLocal)
     {
         try {
             command.Commit();
             Trace.Write(".C.");
         } catch (Exception ex) {
             command.Command.Transaction.Rollback();
             throw ex;
         }
     }
        public ITransactionalCommand GetCommandTransactional(bool createTransaction)
        {
            ITransactionalCommand command = base.GetCommand(createTransaction);

            foreach (var inputParameter in InputParameters)
            {
                var dbParameter = command.Command.CreateParameter();
                dbParameter.ParameterName = DataContext.Vendor.SqlProvider.GetParameterName(inputParameter.Alias);
                object value = NormalizeDbType(inputParameter.GetValue(Target));
                dbParameter.SetValue(value, inputParameter.ValueType);
                command.Command.Parameters.Add(dbParameter);
            }
            return(command);
        }
Пример #6
0
        /// <summary>
        /// Fills dbCommand parameters, given names and values
        /// </summary>
        /// <param name="dbCommand"></param>
        /// <param name="parameterNames"></param>
        /// <param name="parameterValues"></param>
        private void FeedParameters(ITransactionalCommand command)
        {
            IDbCommand dbCommand = command.Command;
            for (int parameterIndex = 0; parameterIndex < Parameters.Count; parameterIndex++)
            {
                var dbParameter = dbCommand.CreateParameter();
                dbParameter.ParameterName = Parameters[parameterIndex];

                var value = parameterValues[parameterIndex];
                if (value == null)
                    dbParameter.Value = DBNull.Value;
                else
                    dbParameter.Value = value;

                dbCommand.Parameters.Add(dbParameter);
            }

        }
        /// <summary>
        /// Fills dbCommand parameters, given names and values
        /// </summary>
        /// <param name="dbCommand"></param>
        /// <param name="parameterNames"></param>
        /// <param name="parameterValues"></param>
        private void FeedParameters(ITransactionalCommand command)
        {
            IDbCommand dbCommand = command.Command;

            for (int parameterIndex = 0; parameterIndex < Parameters.Count; parameterIndex++)
            {
                var dbParameter = dbCommand.CreateParameter();
                dbParameter.ParameterName = Parameters[parameterIndex];

                var value = parameterValues[parameterIndex];
                if (value == null)
                {
                    dbParameter.Value = DBNull.Value;
                }
                else
                {
                    dbParameter.Value = value;
                }

                dbCommand.Parameters.Add(dbParameter);
            }
        }