public static ICollection <SqlParameter> AddParameter <T>( this ICollection <SqlParameter> paramList, string paramName, SqlDbType type, T?value, Action <SqlParameter> configure = null ) where T : struct { if (paramList == null) { throw new ArgumentNullException(nameof(paramList)); } if (paramList.IsReadOnly) { throw new InvalidOperationException( "Cannot add parameters to a Read - Only Collection."); } var param = new SqlParameter(paramName, type); if (value.HasValue) { param.Value = value.Value; } else { param.Value = DBNull.Value; } configure?.Invoke(param); return(paramList.AddParameter(param)); }
public static ICollection <SqlParameter> AddParameter( this ICollection <SqlParameter> paramList, string paramName, SqlDbType type, object value, Action <SqlParameter> configure = null ) { if (paramList == null) { throw new ArgumentNullException(nameof(paramList)); } if (paramList.IsReadOnly) { throw new InvalidOperationException( "Cannot add parameters to a Read - Only Collection."); } var param = new SqlParameter { ParameterName = paramName, SqlDbType = type, Value = value ?? DBNull.Value }; configure?.Invoke(param); return(paramList.AddParameter(param)); }
public static ICollection <SqlParameter> AddDataTableParameter <T>( this ICollection <SqlParameter> paramList, string name, string sqlType, IEnumerable <T> items) { return(paramList.AddParameter(new SqlParameter(name, SqlDbType.Structured) { Value = items.ToDataTable(), TypeName = sqlType })); }