EntityFramework扩展之第三方类库
EntityFramework 非常好用,结构优美.. 但是美中有不足:1.对动态查询条件支持的不是很好 ;2.批量操作支持的不是很好.。
下面就是几个第三方库,对EntityFramework 的扩展
一、第三方类库
LinqKit
动态拼装查询条件
开源地址:https://github.com/scottksmith95/LINQKit
Entity Framework Extensions
(收费)Website: http://entityframework-extensions.net/
Paid library to dramatically improve Entity Framework performance:
- BulkSaveChanges
- BulkInsert
- BulkUpdate
- BulkDelete
- BulkMerge
- BulkSynchronize
Entity Framework Plus
开源免费:https://github.com/zzzprojects/EntityFramework-Plus
Website: http://entityframework-plus.net/
Free & Open source library that support following features:
- Audit
- Batch Operations
- Batch Delete
- Batch Update
- Query
- Query Cache
- Query Deferred
- Query Filter
- Query Future
- Query IncludeFilter
- Query IncludeOptimized
EFUtilities
1.功能包含单属性更新.
2.Delete by query
3.Batch insert entities
4.Batch update entities
5.Partial updates / Not loading the data from DB first
6.Update by query
…
如何使用看项目官网
https://github.com/MikaelEliasson/EntityFramework.Utilities
代码获取方式如下:
支持EF4和5
https://www.nuget.org/packages/EFUtilities/0.1.0
PM> Install-Package EFUtilities -Version 0.1.
支持EF6
https://www.nuget.org/packages/EFUtilities
PM> Install-Package EFUtilities
EntityFramework.Extended
主要功能:批量更新和删除,缓存
// Deleting //delete all users where FirstName matches
context.Users
.Where(u => u.FirstName == "firstname")
.Delete(); // Update //update all tasks with status of 1 to status of 2
context.Tasks
.Where(t => t.StatusId == )
.Update(t => new Task { StatusId = }); //example of using an IQueryable as the filter for the update
var users = context.Users.Where(u => u.FirstName == "firstname");
context.Users.Update(users, u => new User {FirstName = "newfirstname"});
2015年后停止更新。迁移到Entity Framework Plus
开源地址: https://github.com/loresoft/EntityFramework.Extended
PM> Install-Package EntityFramework.Extended
efbulkinsert
批量插入 ,已迁移到Entity Framework Extensions
http://efbulkinsert.codeplex.com/
EF4
PM> Install-Package EntityFramework.BulkInsert-ef4
https://www.nuget.org/packages/EntityFramework.BulkInsert-ef4 EF5
PM> Install-Package EntityFramework.BulkInsert-ef5
https://www.nuget.org/packages/EntityFramework.BulkInsert-ef5 EF6
PM> Install-Package EntityFramework.BulkInsert-ef6
https://www.nuget.org/packages/EntityFramework.BulkInsert-ef6
内容来自 :
https://blog.csdn.net/phker/article/details/49334287
EF学习推荐文章:你必须知道的EF知识和经验
EntityFramework扩展之第三方类库的更多相关文章
- Yii 1.1.17 四、属性标签、AR类增删改查、使用上传类与扩展第三方类库
一.属性标签与规则设置 当进入网站页面,将会读数据库返回信息到视图上.那么,现在定义模型中的属性在视图标签上的显示, 也就是模型属性到前台标签的映射 // 定义模型属性到前台标签的映射 public ...
- iOS 常用第三方类库、完整APP示例
一.第三方类库 1:基于响应式编程思想的oc地址:https://github.com/ReactiveCocoa/ReactiveCocoa2:hud提示框地址:https://github.com ...
- TP5 中引入第三方类库
通过了解tp5的目录结构,我们知道其中有两个目录是纺织扩展类库文件的. extend是放置自定义或者其他类文件的. vendor目录是放置composer类库文件的. 当我们的第三方类库文件是下载的, ...
- iOS常用第三方类库及Xcode插件
第三方类库(github地址): 1.AFNetworking 网络数据 https://github.com/AFNetworking/AFNetworking 2.SDWebImage 图 ...
- 程序开发常用第三方类库一览表(VendorLib)
以下是自己开发过程中用到的第三方类库,记录下来方便查阅 ------------------------------------------------------------------------ ...
- ThinkPHP vendor 方法导入第三方类库
ThinkPHP 3.2 vendor()方法的深入研究及Phpqrcode的正确扩展 ThinkPHP vendor 方法导入第三方类库 第三方类库 第三方类库指除了 ThinkPHP 框架.应用项 ...
- Android 第三方类库简单使用之EventBus
Android 第三方类库之EventBus 1 PS 工欲善其事必先利其器. Eventbus也是一款在开发中常用的利器 这篇也对EventBus的简单介绍和使用,与之前个xutils介绍的级别一样 ...
- thinkphp 3.2,引入第三方类库的粗略记录
首先用第三方类库我是放到vendor里面的 根目录\ThinkPHP\Library\Vendor\Wxphp 例如创建了一个Wxphp文件夹,里面有个php文件叫做 zll.php 文 ...
- 每个项目中,你必须知道的11个Java第三方类库。
Java第三方library ecosystem是一个很广阔的范畴.不久前有人撰文:每个项目中,你必须知道的11个Java第三方类库. 单元测试 1.DBUnit DBunit是一个基于junit扩展 ...
随机推荐
- JAVA核心技术I---JAVA回顾
一:基础类型运算 大部分的指令都没有支持byte.char.short,没有任何指令支持boolean类型.编译器在编译期或者运行期将byte和short类型的数据带符号扩展为相应的int类型数据,将 ...
- mysql一张表多个字段关联另一张表查询
如下:一张订单表多个字段关联用户表: 1.链表查询 SELECT cu.id AS 'id',cu.version AS 'version',cu.cid AS 'cid',cu.uid AS 'ui ...
- Trailing slash
Trailing Slash common case It's common for URLs with a trailing slash to indicate a directory, and t ...
- HDU - 3974 Assign the task (线段树区间修改+构建模型)
https://cn.vjudge.net/problem/HDU-3974 题意 有一棵树,给一个结点分配任务时,其子树的所有结点都能接受到此任务.有两个操作,C x表示查询x结点此时任务编号,T ...
- Linux命令(十三)make_makefile基础
1. 好处 一次编写,终身受益 2. 命名规则 makefile Makefile 3. 三要素 目标 依赖 规则命令 4. 第一版makefile 目标:依赖 tab键 规则命令 makefile: ...
- 058、flannel概述(2019-03-27 周三)
参考https://www.cnblogs.com/CloudMan6/p/7412150.html flannel 是 CentOS开发的容器网络解决方案.flannel 为每个host分配一个 ...
- C#窗口编程时TextBox中的换行
注意Windows下的换行符是\r\n.只使用\n是无法完成换行的
- ZooKeeper基础
======================================ZooKeeper 背景======================================ZooKeeper 是一 ...
- 百度编辑器ueditor 光标位置的坐标
项目需求: 输入某个字符时,弹出一个弹框 弹框位置跟随光标处 经查找和亲测,下面记录一下代码: // 下面计算坐标 let domUtils = UE.dom.domUtils let bk_star ...
- ext Ext.grid.去除右边空白
1.当Scroll没有显示时,Ext.grid右边会显示一个空白间隔. 2.解决办法<View> <ext:GridView ForceFit="true" Sc ...