protected SqlCommand GetCommand(string strSQL, CommandType cmdType, ParamCollection ParameterArray) { SqlCommand cmd = new SqlCommand(); Int32 i = default(Int32); Int32 j = default(Int32); SqlParameter[] para_SP = null; if (cmdType == CommandType.StoredProcedure) { para_SP = Get_SPParameterSet(strSQL); } if (para_SP != null) { //Duyệt từng tham số từ store procedure //Duyệt tham số từ code //Kiểm tra tham số giữa store và code có trùng tên không //Nếu có gán dữ liệu cho tham số store là dữ liệu tham số code //Ngược lại default nothing for (i = 0; i <= para_SP.Length - 2; i++) { SqlParameter ps_SP = para_SP[i]; for (j = 0; j <= ParameterArray.Count - 1; j++) { ParamStruct ps_Code = ParameterArray[j]; if (ps_SP.ParameterName.ToUpper() == ps_Code.ParamName.ToUpper()) { if (System.DBNull.Value == ps_Code.Value) { ps_SP.Value = null; } else { ps_SP.Value = ps_Code.Value; } break; } else { ps_SP.Value = null; } } IDbDataParameter pm = GetParameter(ps_SP.ParameterName, ps_SP.Direction, ps_SP.Value, ps_SP.DbType, ps_SP.Size); cmd.Parameters.Add(pm); } } else { if (((ParameterArray != null)) && ParameterArray.Count > 0) { for (i = 0; i <= ParameterArray.Count - 1; i++) { ParamStruct ps = ParameterArray[i]; IDbDataParameter pm = GetParameter(ps.ParamName, ps.Direction, ps.Value, ps.DataType, ps.Size); cmd.Parameters.Add(pm); } } } cmd.CommandType = cmdType; cmd.CommandText = strSQL; return(cmd); }
public Int32 Add(ParamStruct value) { return(List.Add(value)); }