1 public class SqlParameterList : List<SqlParameter> 2 { 3 #region Properties 4 5 /// <summary> 6 /// Gets the parameter having the specified name 7 /// </summary> 8 /// <param name="parameterName">The name of the parameter 9 /// to be returned</param> 10 /// <returns>The specified parameter, or null if no 11 /// parameter with the specified name exists in the list</returns> 12 public SqlParameter this[string parameterName] 13 { 14 get 15 { 16 foreach (SqlParameter parm in this) 17 { 18 if (parm.ParameterName == parameterName) 19 return parm; 20 } 21 return null; 22 } 23 } 24 25 #endregion 26 27 #region Methods 28 29 /// <summary> 30 /// Creates a new SqlParameter instance and adds it to the list 31 /// </summary> 32 /// <param name="name">The name of the parameter</param> 33 /// <param name="type">The data type of the parameter</param> 34 /// <param name="size">The size of the parameter</param> 35 /// <param name="value">The value of the parameter</param> 36 /// <returns>The new SqlParameter instance</returns> 37 public SqlParameter Add( 38 string name, 39 SqlDbType type, 40 int size, 41 object value 42 ) 43 { 44 SqlParameter parameter = Add(name, type, value); 45 parameter.Size = size; 46 return parameter; 47 } 48 49 /// <summary> 50 /// Creates a new SqlParameter instance and adds it to the list 51 /// </summary> 52 /// <param name="name">The name of the parameter</param> 53 /// <param name="type">The data type of the parameter</param> 54 /// <param name="value">The value of the parameter</param> 55 /// <returns>The new SqlParameter instance</returns> 56 public SqlParameter Add( 57 string name, 58 SqlDbType type, 59 object value 60 ) 61 { 62 SqlParameter parameter = new SqlParameter(name, type); 63 parameter.Value = (value == null) ? DBNull.Value : value; 64 Add(parameter); 65 return parameter; 66 } 67 68 /// <summary> 69 /// Creates a new SqlParameter instance and adds it to the list 70 /// </summary> 71 /// <param name="name">The name of the parameter</param> 72 /// <param name="type">The data type of the parameter</param> 73 /// <param name="value">The value of the parameter</param> 74 /// <returns>The new SqlParameter instance</returns> 75 public SqlParameter Add( 76 string name, 77 object value 78 ) 79 { 80 SqlParameter parameter = new SqlParameter(name, value); 81 Add(parameter); 82 return parameter; 83 } 84 85 /// <summary> 86 /// Removes the parameter with the specified name from the list 87 /// </summary> 88 /// <param name="parameterName">The name of the parameter to be removed</param> 89 /// <returns>True if an item was removed from the list, false if not</returns> 90 public bool Remove(string parameterName) 91 { 92 SqlParameter parm = this[parameterName]; 93 if (parm == null) 94 return false; 95 96 this.Remove(parm); 97 return true; 98 } 99 100 #endregion 101 }
使用:
1 SqlParameterList parameters = new SqlParameterList(); 2 parameters.Add("@testName", SqlDbType.VarChar, consultantNumber);