private void SetSqlCommandInputParamValue(DbCommand command, object[] param, string query)
        {
            // Set parameters
            String[] inParamNames = GetSqlParamNames(query);
            for (int i = 0; i < inParamNames.Length; i++)
            {
                //var para = new MySqlParameter(inParamNames[i], param[i]);
                var para = command.CreateParameter();
                para.ParameterName = inParamNames[i];
                para.Value         = param[i];
                para.DbType        = DbTypeUtil.GetDBType(para.Value);

                if (para.DbType == DbType.String &&
                    para.Value != null &&
                    string.IsNullOrEmpty(para.Value.ToString()))
                {
                    para.Value = null;
                }

                if (para.Value == null)
                {
                    para.Value = Convert.DBNull;
                }

                command.Parameters.Add(para);
            }
        }
Exemple #2
0
        private void SetProcCommandInputParamValue(DbCommand command, object[] param, String[] inParamNames)
        {
            // Set parameters
            for (int i = 0; i < inParamNames.Length; i++)
            {
                var para = command.CreateParameter();
                para.ParameterName = inParamNames[i];
                para.Value         = param[i];

                if (para.Value is DataTable)
                {
                    var sqlPara = para as SqlParameter;
                    if (sqlPara == null)
                    {
                        throw new Exception("Only SQL Server supports a parameter of DataTable Type.");
                    }
                    sqlPara.SqlDbType = SqlDbType.Structured;
                }
                else
                {
                    para.DbType = DbTypeUtil.GetDBType(para.Value);
                }

                if (para.DbType == DbType.String &&
                    para.Value != null &&
                    string.IsNullOrEmpty(para.Value.ToString()))
                {
                    para.Value = null;
                }

                if (para.Value == null)
                {
                    para.Value = Convert.DBNull;
                }

                command.Parameters.Add(para);
            }
        }