public TBuilder WithReturnParameter() { var parameter = new DatabaseCommandParameter { Name = "ReturnParameter", Direction = ParameterDirection.ReturnValue }; _commandRequest.Parameters.Add(parameter); return(this as TBuilder); }
public TBuilder AddOutputParameter(string parameterName, object databaseType) { var parameter = new DatabaseCommandParameter { Name = parameterName, Direction = ParameterDirection.Output, DatabaseType = databaseType.ToString() }; _commandRequest.Parameters.Add(parameter); return(this as TBuilder); }
public TBuilder AddInputOutputParameter <TParameter>(string parameterName, TParameter parameterValue) { var parameter = new DatabaseCommandParameter { Name = parameterName, Value = parameterValue, Direction = ParameterDirection.InputOutput }; parameter.Value ??= DBNull.Value; _commandRequest.Parameters.Add(parameter); return(this as TBuilder); }
public TBuilder AddInputOutputParameter <TParameter>(string parameterName, TParameter parameterValue, object databaseType, int size) { var parameter = new DatabaseCommandParameter { Name = parameterName, Value = parameterValue, Direction = ParameterDirection.InputOutput, DatabaseType = databaseType.ToString(), Size = size }; parameter.Value ??= DBNull.Value; _commandRequest.Parameters.Add(parameter); return(this as TBuilder); }
private SqlParameter ToSqlParameter(DatabaseCommandParameter databaseCommandParameter) { var parameter = new SqlParameter { ParameterName = databaseCommandParameter.Name, Value = databaseCommandParameter.Value, Direction = databaseCommandParameter.Direction, Size = databaseCommandParameter.Size }; if (!string.IsNullOrEmpty(databaseCommandParameter.DatabaseType)) { if (!Enum.TryParse(databaseCommandParameter.DatabaseType, true, out SqlDbType sqlDbType)) { throw new InvalidOperationException($"Could not parse databaseType of '{databaseCommandParameter.DatabaseType}' to a System.Data.DbType"); } parameter.SqlDbType = sqlDbType; } return(parameter); }