Entity Framework Core Lolita
这是Entity Framework Core的一个轻量的扩展,提供批量更新和删除操作的支持。而且这个库出自中国一位MVP之手,虽然内容是英文,也很简单,相信你也能看懂。
This is a light-weight extension which provides bulk update and delete operations for Entity Framework Core.
View source on GitHub
Download from NuGet
Getting Started
① Add Pomelo.EntityFrameworkCore.Lolita
package into your project.json
. There are many different special versions for different EF database provider:
Pomelo.EntityFrameworkCore.Lolita.MySql
Pomelo.EntityFrameworkCore.Lolita.SqlServer
Pomelo.EntityFrameworkCore.Lolita.PostgreSQL
Pomelo.EntityFrameworkCore.Lolita.Sqlite
② Configure your DbContext
For ASP.NET Core developers, you can Use lolita extensions when adding the DbContext into services collection:
services.AddDbContext<Models.SampleContext>(x =>
{x.UseMySql( "server=localhost;database=lolita;uid=root;pwd=yourpwd;");x.UseMySqlLolita();
});
For .NET Core developers, you can override the OnConfiguring of DbContext to use lolita:
protected override void OnConfiguring( DbContextOptionsBuilder optionsBuilder){optionsBuilder.UseMySql( "server=localhost;database=lolita;uid=root;pwd=yourpwd;");optionsBuilder.UseMySqlLolita(); base.OnConfiguring(optionsBuilder);
}
③ There are many different extended methods for updating a column or bulk deleting.
Updating:
db.Posts.Where(x => x.Time <= DateTime.Now).SetField(x => x.IsPinned).WithValue(false).Update();
You can also use the following methods to update a field:
Method | SQL | Hint |
---|---|---|
WithValue | SET [x] = @value | |
Plus | SET [x] = [x] + @value | Numeric only |
Subtract | SET [x] = [x] - @value | Numeric only |
Multiply | SET [x] = [x] * @value | Numeric only |
Divide | SET [x] = [x] / @value | Numeric only |
Mod | SET [x] = [x] % @value | Numeric only |
Prepend | SET [x] = @value + [x] | String only |
Append | SET [x] = [x] + @value | String only |
AddMilliseconds | SET [x] = DATEADD(ms, @value, [x]) | DateTime only |
AddSeconds | SET [x] = DATEADD(ss, @value, [x]) | DateTime only |
AddMinutes | SET [x] = DATEADD(mi, @value, [x]) | DateTime only |
AddHours | SET [x] = DATEADD(hh, @value, [x]) | DateTime only |
AddDays | SET [x] = DATEADD(dd, @value, [x]) | DateTime only |
AddMonths | SET [x] = DATEADD(mm, @value, [x]) | DateTime only |
AddYears | SET [x] = DATEADD(yy, @value, [x]) | DateTime only |
Deleting:
db.Users.Where(x => db.Posts.Count(y => y.UserId == x.Id) == 0).Where(x => x.Role == UserRole.Member).Delete();
Contribute
One of the easiest ways to contribute is to participate in discussions and discuss issues. You can also contribute by submitting pull requests with code changes.
License
MIT
相关文章:
全球首发免费的MySql for Entity Framework Core
.NET Core 使用Dapper 操作MySQL
在.NET Core中使用MySQL5.7的JSON类型字段
原文地址:http://www.1234.sh/post/ef-core-lolita
.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注
Entity Framework Core Lolita相关推荐
- Entity Framework Core 2.0的新特性
虽然EF Core 2.0存在大量槽点,但是它也给出了不少亮点.在本文中,我们将介绍这次发布版的部分亮点. \\ 数据库表切分(Table Splitting) \\ ORM常被吐槽是总是对所请求数据 ...
- ABP官方文档翻译 9.2 Entity Framework Core
Entity Framework Core 介绍 DbContext 配置 在Startup类中 在模块PreInitialize方法中 仓储 默认仓储 自定义仓储 应用程序特定基础仓储类 自定义仓储 ...
- Entity Framework Core 2.0 使用入门
本文转载自作者:晓晨Master(李志强) 原文章地址 https://www.cnblogs.com/stulzq/p/7717873.html 一.前言 Entity Framework(后面简称 ...
- Entity Framework Core介绍(1)
介绍 Entity Framework (EF) Core 是轻量化.可扩展和跨平台版的常用 Entity Framework 数据访问技术. EF Core 可用作对象关系映射程序 (O/RM),以 ...
- oracle精简版_使用Entity Framework Core访问数据库(Oracle篇)
前言 哇..看看时间 真的很久很久没写博客了 将近一年了. 最近一直在忙各种家中事务和公司的新框架 终于抽出时间来更新一波了. 本篇主要讲一下关于Entity Framework Core访问ora ...
- 在 .NET Core 中如何让 Entity Framework Core 在日志中记录由 LINQ 生成的SQL语句
在开发中,我们想在调试中查看EF Core执行的sql语句,可以使用SQL Studio Manager Tools工具,另一种方式是使用EF Core提供的日志.在ASP.NET Core使用Ent ...
- Entity Framework Core 6.0 预览4 性能改进
起因 微软在Build2021开发者大会上,发布Entity Framework Core 6.0(简称EFCore 6)预览第四版,号称是性能版本,性能提升主要对于Entity Framework ...
- Entity Framework Core 5中实现批量更新、删除
本文介绍了一个在EntityFramework Core 5中不需要预先加载数据而使用一句SQL语句批量更新.删除数据的开发包,并且分析了其实现原理,并且与其他实现方案做了比较. 一.背景 随着微软全 ...
- Entity Framework Core生成的存储过程在MySQL中需要进行处理及PMC中的常用命令
在使用Entity Framework Core生成MySQL数据库脚本,对于生成的存储过程,在执行的过程中出现错误,需要在存储过程前面添加 delimiter // 附:可以使用Visual Stu ...
最新文章
- 剑桥少儿英语预备级教案(上) unit15 I can draw it.
- tnsname.ora文件配置详解
- 180904 再卖菜 ccf
- SIFT算法中概念简单解释
- 自然语言处理理论与实战
- ATT与intel汇编格式区分
- C++ 安全单例模式总结
- 通过修改控制文件scn推进数据库scn
- 基于SSM实现微博系统
- 在C语言中使用fflush(stdin)
- 武汉理工大学计算机考研考纲,2018年武汉理工大学825流体力学考试大纲
- 前端-----之-----轮播
- 逻辑回归——一文带你搞懂逻辑回归原理
- 图文并茂:推荐算法架构——粗排
- h5 默认为移动端页面_20条移动前端H5页面开发规范,h5开发必看文档
- FANUC机器人4种启动方式的具体操作步骤
- 揭秘GES超大规模图计算引擎HyG:图切分
- 有没有自动打码的软件
- jxl 新版电子表格_Android使用jxl快速生成Excel表
- 【TencentOS tiny】 超详细的TencentOS tiny移植到STM32F103全教程
热门文章
- linux部署的java应用,浏览器访问时,报域名解析错误
- 解决scrollViewDidScroll do not work的方法
- 【Silverlight5矢量打印】如何用C#代码检测打印机和驱动是否支持PostScript
- 【转载】可复用的FS
- 算法面试:精选微软等公司经典的算法面试100题 第26-35题
- 系统安全防护之UNIX下***检测方法
- Windows Server 2003域和活动目录
- windows 服务实现定时任务调度
- 【视频回放】Best of Build Tour in China 暨 Watching Party - 大湾区专场
- SqlServer SqlParser 介绍及基本使用