我是编程乐趣,一个10年.Net开发经验老程序员,点击右上方“关注”,每天为你分享开源项目和编程知识。
我们在项目开发中,面对一些高并发、大数据量等业务场景,往往对SQL语句的性能要求比较高,这个时候为了方便灵活控制,我们一般就会编写原生的SQL。
Dapper就是一个非常高性能的轻量级ORM框架,Dapper采用原生SQL语句的方式,对于CRUD这些简单操作我们一般都会自行封装,不然就会变成很繁琐。
今天给大家推荐一个Dapper的CRUD扩展库,就可以满足我们的需求,减少我们的工作量。
01
项目简介
Dapper.SimpleCRUD是一个开源项目,它基于Dapper开发的,为开发者提供了简单的CRUD操作帮助器。
Dapper本身是一个轻量级的ORM框架,它允许开发者使用SQL语句直接操作数据库,同时又能享受到ORM带来的便利,如参数化查询等。
而Dapper.SimpleCRUD则进一步简化了这一过程,让开发者能够更轻松地执行CRUD操作。
Dapper.SimpleCRUD的核心功能CRUD操作:通过简单的API,开发者可以轻松地执行插入、读取、更新和删除操作,包括Get、GetList、Insert、Update、Delete等。通过扩展IDbConnection接口,可以直接使用,无需额外的配置。
模型属性支持:通过使用属性(如[Key]、[Table]、[Column]等),可以轻松地指定模型与数据库表之间的映射关系。同时提供[Editable(false)]、[ReadOnly(true)]、[IgnoreSelect]、[IgnoreInsert]、[IgnoreUpdate]等属性,用于控制模型属性在CRUD操作中的行为。
异步操作支持:对于需要处理大量数据或需要提高响应速度的应用,Dapper.SimpleCRUD提供了异步操作的支持。
02
使用方法
1、定义模型
[Table("Users")] public User { [Key] public int UserId { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public int Age { get; set; } // 额外的、不在数据库中的属性 [Editable(false)] public string FullName { get { return string.Format("{0} {1}", FirstName, LastName); } } }2、执行CRUD操作
// 假设已经有一个打开的数据库连接 connection // 插入操作 var newId = connection.Insert(new User { FirstName = "John", LastName = "Doe", Age = 30 }); // 读取操作 var user = connection.Get(newId); // 更新操作 user.Age = 31; connection.Update(user); // 删除操作 connection.Delete(newId);
03
项目地址
https://github.com/ericdc1/Dapper.SimpleCRUD
- End -
.Net开源项目合集:https://github.com/bianchenglequ/NetCodeTop
推荐阅读
Asp.net动态Web API的教程!
Html2OpenXml:HTML转化为OpenXml的.Net库,轻松实现Html转为Word。
SharpLab:.Net反编译工具,方便实时查看反编译后的代码!
盘点4个.Net跨平台图形开源库!
Flurl:一个Star 3.9K的链式RESTful风格HTTP开源.Net库