Dapper 幫助類
/// <summary>
/// Dapper 工具類
/// </summary>
public static class DapperHelper
{
static string sqlconnection = System.Configuration.ConfigurationManager.ConnectionStrings["sqlServer"].ToString();
private static SqlConnection OpenConnection()
{
SqlConnection connection = new SqlConnection(sqlconnection); //這里sqlconnection就是數據庫連接字符串
connection.Open();
return connection;
}
#region 查詢數據
/// <summary>
/// 查詢數據
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="sql">sql</param>
/// <param name="entity">T</param>
/// <returns></returns>
public static List<T> Query<T>(string sql, T entity)
{
List<T> list = new List<T>();
using (IDbConnection conn = OpenConnection())
{
list = conn.Query<T>(sql, entity).ToList();
}
return list;
}
/// <summary>
/// 查詢數據
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="sql">sql</param>
/// <param name="obj">new {}</param>
/// <returns></returns>
public static List<T> Query<T>(string sql, object obj)
{
List<T> list = new List<T>();
using (IDbConnection conn = OpenConnection())
{
list = conn.Query<T>(sql, obj).ToList();
}
return list;
}
/// <summary>
/// 查詢第一行第一列的數據
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="sql">sql</param>
/// <param name="obj">new {}</param>
/// <returns></returns>
public static T QueryScalar<T>(string sql, object obj)
{
T result = default(T);
using (IDbConnection conn = OpenConnection())
{
result = conn.ExecuteScalar<T>(sql, obj);
}
return result;
}
#endregion
#region 執行增,刪,改
/// <summary>
/// 執行增,刪,改
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="sql">sql</param>
/// <param name="entity"></param>
/// <returns></returns>
public static int NonQuery<T>(string sql, T entity)
{
int res = 0;
using (IDbConnection conn = OpenConnection())
{
res = conn.Execute(sql, entity);
}
return res;
}
/// <summary>
/// 執行增,刪,改
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="sql">sql</param>
/// <param name="entity"></param>
/// <returns></returns>
public static int NonQuery(string sql, object obj)
{
int res = 0;
using (IDbConnection conn = OpenConnection())
{
res = conn.Execute(sql, obj);
}
return res;
}
#endregion
}
調用實例1
Role role =new Role();
// 給role賦值ID,RoleName,Description,CreateTime
string sql = "INSERT INTO [Role] ([ID],[RoleName],[Description], [CreateTime]) VALUES(NEWID(),@RoleName,@Description,getdate())";
int num = DapperHelper.NonQuery<Role>(sql, role);
調用實例2
string sql = "INSERT INTO [Role] ([ID],[RoleName],[Description], [CreateTime]) VALUES(NEWID(),@RoleName,@Description,getdate())";
int num = DapperHelper.NonQuery<Role>(sql, new {ID=ID,RoleName=RoleName,Description=Description,CreateTime=CreateTime});
目前只封裝了這些方法需要的話以后再寫
感興趣的可以加QQ群:765907694 一起交流,探討技術問題