C# Dapper 轻量ORM调试对SQLServer

Dapper简介

Dapper只有一个代码文件,完全开源,你可以放在项目里的任何位置,来实现数据到对象的ORM操作,体积小速度快。 使用ORM的好处是增、删、改很快,不用自己写sql,因为这都是重复技术含量低的工作,还有就是程序中大量的从数据库中读数据然后创建model,并为model字段赋值。这些ORM都可以轻松给你搞定。ORM给我们开发带来便利时,性能也是一个让我们不得不考虑的问题。一般的ORM性能和直接写原生的sql比都差不少,但是Dapper性能还很错,甚至和DbHelperSQL方式性能高出很多。

假如你喜欢原生的Sql语句,又喜欢ORM的简单,那你一定会喜欢上Dapper这款ROM。

Dapper

 

Dapper 功能实现

 1 Dapper 功能实现
 2 /// <summary>
 3         /// 执行sql语句
 4         /// </summary>
 5         /// <param name="strSql"></param>
 6         /// <returns></returns>
 7         public int ExecuteBySql(string strSql)
 8         {
 9             if (dbTransaction == null)
10             {
11                 using (var connection = Connection)
12                 {
13                     return connection.Execute(strSql);
14                 }
15             }
16             else
17             {
18                 dbTransaction.Connection.Execute(strSql, null, dbTransaction);
19                 return 0;
20 
21             }
22         }
23         /// <summary>
24         /// 执行sql语句带参数的
25         /// </summary>
26         /// <param name="strSql"></param>
27         /// <param name="dbParameter"></param>
28         /// <returns></returns>
29         public int ExecuteBySql(string strSql, params DbParameter[] dbParameter)
30         {
31             if (dbTransaction == null)
32             {
33                 using (var connection = Connection)
34                 {
35                     return connection.Execute(strSql, dbParameter);
36                 }
37             }
38             else
39             {
40                 dbTransaction.Connection.Execute(strSql, dbParameter, dbTransaction);
41                 return 0;
42 
43             }
44         }
45         /// <summary>
46         /// 执行存储过程
47         /// </summary>
48         /// <param name="procName"></param>
49         /// <returns></returns>
50         public int ExecuteByProc(string procName)
51         {
52             if (dbTransaction == null)
53             {
54                 using (var connection = Connection)
55                 {
56                     return connection.Execute(procName);
57                 }
58             }
59             else
60             {
61                 dbTransaction.Connection.Execute(procName, null, dbTransaction);
62                 return 0;
63 
64             }
65         }
66         /// <summary>
67         /// 执行存储过程带参数的
68         /// </summary>
69         /// <param name="procName"></param>
70         /// <param name="dbParameter"></param>
71         /// <returns></returns>
72         public int ExecuteByProc(string procName, params DbParameter[] dbParameter)
73         {
74             if (dbTransaction == null)
75             {
76                 using (var connection = Connection)
77                 {
78                     return connection.Execute(procName, dbParameter);
79                 }
80             }
81             else
82             {
83                 dbTransaction.Connection.Execute(procName, dbParameter, dbTransaction);
84                 return 0;
85 
86             }
87         }

 

转载于:https://www.cnblogs.com/lr215/p/5679686.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C#中,常见的ORM框架有Entity Framework、NHibernate、Dapper等,这里以Entity Framework为例,介绍如何访问SQL Server实例。 1. 安装Entity Framework 首先,需要在Visual Studio中安装Entity Framework。打开NuGet包管理器控制台,执行以下命令: ``` Install-Package EntityFramework ``` 2. 配置连接字符串 在App.config或Web.config文件中,需要配置SQL Server数据库的连接字符串,例如: ``` <connectionStrings> <add name="MyDbContext" connectionString="Data Source=localhost;Initial Catalog=test;User ID=root;Password=123456;MultipleActiveResultSets=True;" providerName="System.Data.SqlClient" /> </connectionStrings> ``` 其中,`Data Source`指定了SQL Server实例的主机名,`Initial Catalog`指定了数据库名称,`User ID`和`Password`分别为数据库用户名和密码。 3. 创建实体类 使用Entity Framework需要创建实体类,实体类映射到数据库中的表。例如: ``` public class User { public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } } ``` 其中,`Id`属性为主键,类型为int,`Name`和`Age`属性分别为姓名和年龄,类型为string和int。 4. 创建DbContext类 使用Entity Framework需要创建DbContext类,DbContext类表示数据库上下文,包含了所有实体类与数据库表之间的映射关系。例如: ``` public class MyDbContext : DbContext { public DbSet<User> Users { get; set; } public MyDbContext() : base("name=MyDbContext") { } } ``` 其中,`DbSet`表示一个实体集,`Users`属性表示User实体类对应的数据库表。`MyDbContext`类继承自`DbContext`类,调用基类的构造函数时,传入连接字符串的名称。 5. 使用DbContext进行数据库操作C#代码中,可以使用DbContext对象进行数据库操作,例如: ``` using (var db = new MyDbContext()) { var user = new User { Name = "张三", Age = 20 }; db.Users.Add(user); db.SaveChanges(); } ``` 使用`using`语句创建`MyDbContext`对象,然后创建`User`对象并添加到`Users`属性中,最后调用`SaveChanges`方法提交更改。Entity Framework会自动将实体类与数据库表之间的映射关系转换为SQL语句,执行数据库操作

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值