// Description: C# Extension Methods | Enhance the .NET Framework and .NET Core with over 1000 extension methods.// Website & Documentation: https://csharp-extension.com/// Issues: https://github.com/zzzprojects/Z.ExtensionMethods/issues// License (MIT): https://github.com/zzzprojects/Z.ExtensionMethods/blob/master/LICENSE// More projects: https://zzzprojects.com/// Copyright ZZZ Projects Inc. All rights reserved.using System;using System.Data;using System.Data.SQLite;using Z.Data.SQLite;public static partial class Extensions{/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <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>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, string cmdText, SQLiteParameter[] parameters, CommandType commandType, SQLiteTransaction transaction) where T : new(){using (SQLiteCommand command = @this.CreateCommand()){command.CommandText = cmdText;command.CommandType = commandType;command.Transaction = transaction;if (parameters != null){command.Parameters.AddRange(parameters);}using (IDataReader reader = command.ExecuteReader()){reader.Read();return reader.ToEntity<T>();}}}/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <param name="this">The @this to act on.</param>/// <param name="commandFactory">The command factory.</param>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, Action<SQLiteCommand> commandFactory) where T : new(){using (SQLiteCommand command = @this.CreateCommand()){commandFactory(command);using (IDataReader reader = command.ExecuteReader()){reader.Read();return reader.ToEntity<T>();}}}/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <param name="this">The @this to act on.</param>/// <param name="cmdText">The command text.</param>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, string cmdText) where T : new(){return @this.ExecuteEntity<T>(cmdText, null, CommandType.Text, null);}/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <param name="this">The @this to act on.</param>/// <param name="cmdText">The command text.</param>/// <param name="transaction">The transaction.</param>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, string cmdText, SQLiteTransaction transaction) where T : new(){return @this.ExecuteEntity<T>(cmdText, null, CommandType.Text, transaction);}/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <param name="this">The @this to act on.</param>/// <param name="cmdText">The command text.</param>/// <param name="commandType">Type of the command.</param>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, string cmdText, CommandType commandType) where T : new(){return @this.ExecuteEntity<T>(cmdText, null, commandType, null);}/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <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>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, string cmdText, CommandType commandType, SQLiteTransaction transaction) where T : new(){return @this.ExecuteEntity<T>(cmdText, null, commandType, transaction);}/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <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>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, string cmdText, SQLiteParameter[] parameters) where T : new(){return @this.ExecuteEntity<T>(cmdText, parameters, CommandType.Text, null);}/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <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>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, string cmdText, SQLiteParameter[] parameters, SQLiteTransaction transaction) where T : new(){return @this.ExecuteEntity<T>(cmdText, parameters, CommandType.Text, transaction);}/// <summary>/// A SQLiteConnection extension method that executes the entity operation./// </summary>/// <typeparam name="T">Generic type parameter.</typeparam>/// <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>/// <returns>A T.</returns>public static T ExecuteEntity<T>(this SQLiteConnection @this, string cmdText, SQLiteParameter[] parameters, CommandType commandType) where T : new(){return @this.ExecuteEntity<T>(cmdText, parameters, commandType, null);}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。