Exemple #1
0
        //准备参数--------------
        #region CreateParameter
        public static IDbDataParameter CreateParameter(string name, DbType type, object value)
        {
            IDbDataParameter prm = Provider.CreateParameter();

            prm.Direction     = ParameterDirection.Input;
            prm.ParameterName = name;
            prm.DbType        = type;
            prm.Value         = DbHelper.PrepareParameterValue(value, true);

            return(prm);
        }
Exemple #2
0
        private static void PrepareCommand(DbCommand cmd, DbConnection conn, DbTransaction trans, CommandType cmdType, string cmdText, DbParameter[] cmdParms)
        {
            if (conn.State != ConnectionState.Open)
            {
                try
                {
                    conn.Open();
                }
                catch (SqlException ex)
                {
                    Logger.Fatal(ex.Translate(), ex);
                    throw;
                }
            }

            cmd.Connection  = conn;
            cmd.CommandText = cmdText;

            if (trans != null)
            {
                cmd.Transaction = trans;
            }

            cmd.CommandType    = cmdType;
            cmd.CommandTimeout = Timeout;

            if (cmdParms != null)
            {
                foreach (DbParameter parm in cmdParms)
                {
                    if (parm != null)
                    {
                        cmd.Parameters.Add(parm);
                    }
                }
            }

            if (cmdType == CommandType.StoredProcedure)
            {
                DbParameter para = Provider.CreateParameter();
                para.ParameterName = ReturnValueName;
                para.Direction     = ParameterDirection.ReturnValue;
                cmd.Parameters.Add(para);
            }
        }