什么是ORM?
ORM 是 Object Relational Mapping 的缩写,译为“对象关系映射”,是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。它解决了对象和关系型数据库之间的数据交互问题,ORM的作用是在关系型数据库和业务实体对象之间作一个映射,这样我们在具体的操作业务对象的时候,就不需要再去和复杂的SQL语句打交道,只需简单的操作对象的属性和方法。
如何选择合适自己的ORM框架?
对于我们而言选择ORM框架的目的其实都是为了让我们的程序更好的操作数据库,提高开发编程效率和程序的维护拓展性。因此我们在为自己负责的项目选择合适的ORM框架的时候需要从项目的业务场景出发,选择最适合自己团队的ORM框架(注意没有完美的框架,适合团队的才是最好的)。以下是一些比较好用且优秀的.NET ORM框架汇总,排名不分先后可供大家参考学习(假如您有更好的.NET相关ORM推荐请在文末留言,谢谢)。
.NET ORM框架使用情况统计
统计以下16个.NET ORM框架使用情况(可多选),下面16个.NET ORM框架都是比较好用且优秀的框架,排名不分先后可供大家参考学习。欢迎大家参与、分享,之后会把统计结果发布在微信公众号和DotNetGuide技术交流群里✨。
优秀项目和框架精选
下面的.NET ORM框架已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞)。
EF/EF Core
Dapper
- GitHub地址:https://github.com/DapperLib/Dapper
SqlSugar
- 官网地址:http://www.donet5.com
- GitHub地址:https://github.com/donet5/SqlSugar
FreeSql
Chloe.ORM
- 文档地址:
- GitHub地址:https://github.com/shuxinqin/Chloe
nhibernate-core
- NHibernate社区网站: https://nhibernate.info
- GitHub地址:https://github.com/nhibernate/nhibernate-core
SmartSql
PetaPoco
- 文档地址:https://discoverdot.net/projects/peta-poco
- GitHub地址:https://github.com/CollaboratingPlatypus/PetaPoco
linq2db
RepoDb
- GitHub地址:https://github.com/mikependon/RepoDB
ServiceStack.OrmLite
- 文档地址:https://docs.servicestack.net/ormlite/
- GitHub地址:https://github.com/ServiceStack/ServiceStack.OrmLite
SQLite-net
Insight.Database
cyqdata
- GitHub地址:https://github.com/cyq1162/cyqdata
querybuilder
TinyORM
- Wiki地址:https://github.com/sdrapkin/SecurityDriven.TinyORM/wiki
- GitHub地址:https://github.com/sdrapkin/SecurityDriven.TinyORM
加入DotNetGuide技术交流群
1、提供.NET开发者分享自己优质文章的群组和获取更多全面的C#/.NET/.NET Core学习资料、视频、文章、书籍,社区组织,工具和常见面试题资源,帮助大家更好地了解和使用 .NET技术。
2、在这个群里,开发者们可以分享自己的项目经验、遇到的问题以及解决方案,倾听他人的意见和建议,共同成长与进步。
3、可以结识更多志同道合的开发者,甚至可能与其他开发者合作完成有趣的项目。通过这个群组,我们希望能够搭建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值。