分享几个实用且高效的EF Core扩展类库,提高开发效率!
前言
今天大姚给大家分享3款开源且实用的EF Core扩展类库,希望能帮助你在使用 EF Core 进行数据库开发变得更加高效和灵活,提高开发效率。
EF Core介绍
Entity Framework (EF) Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework 数据访问技术,EF Core 是适用于 .NET 的现代对象数据库映射器。它支持 LINQ 查询、更改跟踪、更新和架构迁移。EF Core 通过提供程序插件 API 与 SQL Server、Azure SQL 数据库、SQLite、Azure Cosmos DB、MySQL、PostgreSQL 和其他数据库一起使用(微软官方出品)。
值得推荐的.NET ORM框架
对于还不知道怎么选择.NET ORM框架的同学可以看下面这两篇文章,希望对你会有所帮助。
Entity Framework Plus
Entity Framework Plus是一个开源、免费(MIT License)、功能强大的 Entity Framework(EF)和 Entity Framework Core(EF Core) 扩展库,旨在提升 Entity Framework 的性能和克服其局限性。通过提供一系列实用的功能,如批量操作、查询缓存、查询延迟、LINQ动态、审计跟踪等,使得使用 Entity Framework 进行数据库开发变得更加高效和灵活。
- 开源地址:https://github.com/zzzprojects/EntityFramework-Plus
- 详细介绍:https://mp.weixin.qq.com/s/fvItRFoRMHJfqEnulZNXgw

Core Generic Repository
该库是EF Core ORM的通用仓储库实现,旨在简化开发人员为每个.NET Core和.NET项目编写仓储层的工作。通过使用这个库,开发人员可以更轻松地管理数据访问层,提高开发效率。
- 开源地址:https://github.com/TanvirArjel/EFCore.GenericRepository
- 详细介绍:https://mp.weixin.qq.com/s/OQINTUyppNyh53GkOOaxMA

ShardingCore
ShardingCore是一款开源、简单易用、高性能、普适性,针对EF Core生态下的分表分库的扩展解决方案,支持EF Core2+的所有版本,支持EF Core2+的所有数据库、支持自定义路由、动态路由、高性能分页、读写分离的一款EF Core拓展程序包,一款零依赖第三方组件的扩展。
- 开源地址:https://github.com/dotnetcore/sharding-core
- 详细介绍:https://mp.weixin.qq.com/s/skI0O03jvhc7hdCwkdZbjw

优秀项目和框架精选
以上项目都已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没)。
- GitHub开源地址:https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md
- Gitee开源地址:https://gitee.com/ysgdaydayup/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md
分享几个实用且高效的EF Core扩展类库,提高开发效率!的更多相关文章
- 实用手册:130+ 提高开发效率的 vim 常用命令
Vim 是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和 Emacs 并列成为类 Unix 系统用户最喜欢的编辑器.这里收录了130+程 ...
- 【IDEA】(3)---非常实用提高开发效率和水平的插件
IDEA(3)-Mac中IDEA插件 IDEA提供了许多很实用的插件,能够大大提高开发效率和开发水平,这里列举几个很实用的插件. 说明:这边的IDEA是MAC系统. 一.插件管理界面简介 1.界面位置 ...
- 提高开发效率的 Eclipse 实用操作
工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...
- 能够提高开发效率的Eclipse实用操作
工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...
- 能够提高开发效率的 Eclipse 实用操作
工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...
- 30 个极大提高开发效率超级实用的 VSCode 插件
Visual Studio Code 的插件对于在提升编程效率和加快工作速度非常重要.这里有 30 个最受欢迎的 VSCode 插件,它们将使你成为更高效的搬砖摸鱼大师.这些插件主要适用于前端开发人员 ...
- EF Core扩展工具记录
Microsoft.EntityFrameworkCore.AutoHistory Microsoft.EntityFrameworkCore 的一个插件,支持自动记录数据更改历史记录. GitHub ...
- .NetCore 使用 Linq 动态拼接Expression表达式条件来实现 对EF、EF Core 扩展查询排序操作
相信在使用EF的时候对查询条件或者排序上的处理令人心烦,下面我们就来动态拼接表达式解决这一问题 当我们在查询中使用Where的时候可以看到如下参数 下面我们就来扩展 Expression<Fun ...
- 超级实用的VSCode插件,帮你大幅提高工作效率
Visual Studio Code是一个轻量级但功能强大的源代码编辑器,可在桌面上运行,适用于Windows,macOS和Linux. 它内置了对JavaScript,TypeScript和Node ...
- EF Core扩展工具记录 批量操作 记录修改删除历史 动态linq
Microsoft.EntityFrameworkCore.UnitOfWork Microsoft.EntityFrameworkCore的插件,用于支持存储库,工作单元模式以及支持分布式事务 ...
随机推荐
- 【Docker】02 上手入门
环境前提: 软硬件设备:真机 | 服务器 | 虚拟机 操作系统:Linux 协议传输工具:XSHELL等等,直接操作就不用了 网路:必须得有 Docker的安装: 还好在学Linux的时候装了一下,发 ...
- 国产AI训练卡,对标美国NVIDIA公司的A100,华为昇腾Atlas 300T A2(Ascend 910B4)高性能GPU/NPU/AI推理/国产计算/信创训练卡 —— 电商平台已开售
China has successfully achieved the localization of AI chips, breaking through the technological res ...
- Python-目标检测-将xml文件转换成.txt文件
代码说明:labels文件夹是工程下的一个文件夹,里面存放的是一些xml文件. 然后我们将这些xml文件中的内容取出来,放在路径path1的文件名下.这样也就完成了xml文件到txt文件的转化. 该代 ...
- mysql数据库中decimal数据类型比较大小
在MySQL中,DECIMAL数据类型用于存储精确的数值,它非常适合用于需要高精度计算的场景,如金融应用.当我们需要在MySQL数据库中比较DECIMAL类型数据的大小时,可以使用标准的比较运算符,如 ...
- YOLOv10添加输出各类别训练过程指标
昨天有群友,在交流群[群号:392784757]里提到了这个需求,进行实现一下 V10 官方代码结构相较于 V8 稍微复杂一些 yolov10 是基于 v8 的代码完成开发,yolov10 进行了继承 ...
- C#自定义结构体的(用SendMessage)传递
要传递结构体 public struct STUDENT { public int id; //ID public string name; //姓名 } 要引用Win32api函数FindWindo ...
- Java并发编程学习前期知识上篇
Java并发编程学习前期知识上篇 我们先来看看几个大厂真实的面试题: 从上面几个真实的面试问题来看,我们可以看到大厂的面试都会问到并发相关的问题.所以 Java并发,这个无论是面试还是在工作中,并发都 ...
- 【YashanDB数据库】YAS-02079 archive log mode must be enabled when database is in replication mode
[标题]错误码处理 [问题分类]调整归档 [关键字]关闭归档.YAS-02079.replication mode [问题描述]执行alter database noarchivelog 关闭归档时, ...
- python操作ipv6_用python开启临时http服务器及其ipv6支持
https://blog.csdn.net/weixin_35647799/article/details/112023159
- Vue3 插槽技巧
最近想着使用Vue3+ElementPlus封装一个后台管理常用的Table组件,设计之初考虑到高自定义性,所以便延伸出以下的代码 使用技术栈: Vue3.x ElementPlus Jsx Jsx ...