这是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相关推荐

  1. Entity Framework Core 2.0的新特性

    虽然EF Core 2.0存在大量槽点,但是它也给出了不少亮点.在本文中,我们将介绍这次发布版的部分亮点. \\ 数据库表切分(Table Splitting) \\ ORM常被吐槽是总是对所请求数据 ...

  2. ABP官方文档翻译 9.2 Entity Framework Core

    Entity Framework Core 介绍 DbContext 配置 在Startup类中 在模块PreInitialize方法中 仓储 默认仓储 自定义仓储 应用程序特定基础仓储类 自定义仓储 ...

  3. Entity Framework Core 2.0 使用入门

    本文转载自作者:晓晨Master(李志强) 原文章地址 https://www.cnblogs.com/stulzq/p/7717873.html 一.前言 Entity Framework(后面简称 ...

  4. Entity Framework Core介绍(1)

    介绍 Entity Framework (EF) Core 是轻量化.可扩展和跨平台版的常用 Entity Framework 数据访问技术. EF Core 可用作对象关系映射程序 (O/RM),以 ...

  5. oracle精简版_使用Entity Framework Core访问数据库(Oracle篇)

    前言 哇..看看时间 真的很久很久没写博客了 将近一年了. 最近一直在忙各种家中事务和公司的新框架  终于抽出时间来更新一波了. 本篇主要讲一下关于Entity Framework Core访问ora ...

  6. 在 .NET Core 中如何让 Entity Framework Core 在日志中记录由 LINQ 生成的SQL语句

    在开发中,我们想在调试中查看EF Core执行的sql语句,可以使用SQL Studio Manager Tools工具,另一种方式是使用EF Core提供的日志.在ASP.NET Core使用Ent ...

  7. Entity Framework Core 6.0 预览4 性能改进

    起因 微软在Build2021开发者大会上,发布Entity Framework Core 6.0(简称EFCore 6)预览第四版,号称是性能版本,性能提升主要对于Entity Framework  ...

  8. Entity Framework Core 5中实现批量更新、删除

    本文介绍了一个在EntityFramework Core 5中不需要预先加载数据而使用一句SQL语句批量更新.删除数据的开发包,并且分析了其实现原理,并且与其他实现方案做了比较. 一.背景 随着微软全 ...

  9. Entity Framework Core生成的存储过程在MySQL中需要进行处理及PMC中的常用命令

    在使用Entity Framework Core生成MySQL数据库脚本,对于生成的存储过程,在执行的过程中出现错误,需要在存储过程前面添加 delimiter // 附:可以使用Visual Stu ...

最新文章

  1. 剑桥少儿英语预备级教案(上) unit15 I can draw it.
  2. tnsname.ora文件配置详解
  3. 180904 再卖菜 ccf
  4. SIFT算法中概念简单解释
  5. 自然语言处理理论与实战
  6. ATT与intel汇编格式区分
  7. C++ 安全单例模式总结
  8. 通过修改控制文件scn推进数据库scn
  9. 基于SSM实现微博系统
  10. 在C语言中使用fflush(stdin)
  11. 武汉理工大学计算机考研考纲,2018年武汉理工大学825流体力学考试大纲
  12. 前端-----之-----轮播
  13. 逻辑回归——一文带你搞懂逻辑回归原理
  14. 图文并茂:推荐算法架构——粗排
  15. h5 默认为移动端页面_20条移动前端H5页面开发规范,h5开发必看文档
  16. FANUC机器人4种启动方式的具体操作步骤
  17. 揭秘GES超大规模图计算引擎HyG:图切分
  18. 有没有自动打码的软件
  19. jxl 新版电子表格_Android使用jxl快速生成Excel表
  20. 【TencentOS tiny】 超详细的TencentOS tiny移植到STM32F103全教程

热门文章

  1. linux部署的java应用,浏览器访问时,报域名解析错误
  2. 解决scrollViewDidScroll do not work的方法
  3. 【Silverlight5矢量打印】如何用C#代码检测打印机和驱动是否支持PostScript
  4. 【转载】可复用的FS
  5. 算法面试:精选微软等公司经典的算法面试100题 第26-35题
  6. 系统安全防护之UNIX下***检测方法
  7. Windows Server 2003域和活动目录
  8. windows 服务实现定时任务调度
  9. 【视频回放】Best of Build Tour in China 暨 Watching Party - 大湾区专场
  10. SqlServer SqlParser 介绍及基本使用