DbConnection - ExecuteNonQuery
A DbConnection extension method that executes the non query operation.
public static void Main() { string sql = "DECLARE @FizzBuzz VARCHAR(MAX) = @Fizz"; var dict = new Dictionary<string, object> {{"@Fizz", 1}}; using (var conn = new SqlConnection(FiddleHelper.GetConnectionStringSqlServer())) { conn.Open(); //C# Extension Method: DbConnection - ExecuteNonQuery conn.ExecuteNonQuery(sql, dict.ToDbParameters(conn)); } }
View Source
using System; using System.Data; using System.Data.Common; public static partial class Extensions { /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="cmdText">The command text.</param> /// <param name="parameters">Options for controlling the operation.</param> /// <param name="commandType">Type of the command.</param> /// <param name="transaction">The transaction.</param> public static void ExecuteNonQuery(this DbConnection @this, string cmdText, DbParameter[] parameters, CommandType commandType, DbTransaction transaction) { using (DbCommand command = @this.CreateCommand()) { command.CommandText = cmdText; command.CommandType = commandType; command.Transaction = transaction; if (parameters != null) { command.Parameters.AddRange(parameters); } command.ExecuteNonQuery(); } } /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="commandFactory">The command factory.</param> public static void ExecuteNonQuery(this DbConnection @this, Action<DbCommand> commandFactory) { using (DbCommand command = @this.CreateCommand()) { commandFactory(command); command.ExecuteNonQuery(); } } /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="cmdText">The command text.</param> public static void ExecuteNonQuery(this DbConnection @this, string cmdText) { @this.ExecuteNonQuery(cmdText, null, CommandType.Text, null); } /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="cmdText">The command text.</param> /// <param name="transaction">The transaction.</param> public static void ExecuteNonQuery(this DbConnection @this, string cmdText, DbTransaction transaction) { @this.ExecuteNonQuery(cmdText, null, CommandType.Text, transaction); } /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="cmdText">The command text.</param> /// <param name="commandType">Type of the command.</param> public static void ExecuteNonQuery(this DbConnection @this, string cmdText, CommandType commandType) { @this.ExecuteNonQuery(cmdText, null, commandType, null); } /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="cmdText">The command text.</param> /// <param name="commandType">Type of the command.</param> /// <param name="transaction">The transaction.</param> public static void ExecuteNonQuery(this DbConnection @this, string cmdText, CommandType commandType, DbTransaction transaction) { @this.ExecuteNonQuery(cmdText, null, commandType, transaction); } /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="cmdText">The command text.</param> /// <param name="parameters">Options for controlling the operation.</param> public static void ExecuteNonQuery(this DbConnection @this, string cmdText, DbParameter[] parameters) { @this.ExecuteNonQuery(cmdText, parameters, CommandType.Text, null); } /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="cmdText">The command text.</param> /// <param name="parameters">Options for controlling the operation.</param> /// <param name="transaction">The transaction.</param> public static void ExecuteNonQuery(this DbConnection @this, string cmdText, DbParameter[] parameters, DbTransaction transaction) { @this.ExecuteNonQuery(cmdText, parameters, CommandType.Text, transaction); } /// <summary> /// A DbConnection extension method that executes the non query operation. /// </summary> /// <param name="this">The @this to act on.</param> /// <param name="cmdText">The command text.</param> /// <param name="parameters">Options for controlling the operation.</param> /// <param name="commandType">Type of the command.</param> public static void ExecuteNonQuery(this DbConnection @this, string cmdText, DbParameter[] parameters, CommandType commandType) { @this.ExecuteNonQuery(cmdText, parameters, commandType, null); } }