private SqlParameter SetParameter(Parameter parameter) { switch (parameter.ParameterType) { case ParameterType.INT: return(new SqlParameter() { DbType = DbType.Int32, ParameterName = parameter.Name, Value = DbConverter.ToDbInteger(parameter.Value) }); case ParameterType.VARCHAR: case ParameterType.NVARCHAR: case ParameterType.TEXT: return(new SqlParameter() { DbType = DbType.String, Size = parameter.Size, ParameterName = parameter.Name, Value = DbConverter.ToDbString(parameter.Value) }); case ParameterType.MONEY: return(new SqlParameter() { DbType = DbType.Currency, ParameterName = parameter.Name, Value = DbConverter.ToDbDecimal(parameter.Value) }); case ParameterType.DECIMAL: return(new SqlParameter() { DbType = DbType.Decimal, ParameterName = parameter.Name, Value = DbConverter.ToDbDecimal(parameter.Value) }); case ParameterType.GUID: return(new SqlParameter() { DbType = DbType.Guid, ParameterName = parameter.Name, Value = DbConverter.ToDbGuid(parameter.Value) }); default: throw new Exception("unknown parameter type."); } }