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:

MethodSQLHint
WithValueSET [x] = @value
PlusSET [x] = [x] + @valueNumeric only
SubtractSET [x] = [x] - @valueNumeric only
MultiplySET [x] = [x] * @valueNumeric only
DivideSET [x] = [x] / @valueNumeric only
ModSET [x] = [x] % @valueNumeric only
PrependSET [x] = @value + [x]String only
AppendSET [x] = [x] + @valueString only
AddMillisecondsSET [x] = DATEADD(ms, @value, [x])DateTime only
AddSecondsSET [x] = DATEADD(ss, @value, [x])DateTime only
AddMinutesSET [x] = DATEADD(mi, @value, [x])DateTime only
AddHoursSET [x] = DATEADD(hh, @value, [x])DateTime only
AddDaysSET [x] = DATEADD(dd, @value, [x])DateTime only
AddMonthsSET [x] = DATEADD(mm, @value, [x])DateTime only
AddYearsSET [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跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/328862.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何显示服务器控件,Panel Web 服务器控件概述

Panel Web 服务器控件概述10/22/2014本文内容更新&#xff1a;2007 年 11 月Panel Web 服务器控件在 ASP.NET 网页内提供了一种容器控件&#xff0c;您可以将它用作静态文本和其他控件的父级。本主题包括&#xff1a;背景代码示例类参考背景可以将 Panel 控件用作其他控件的容器…

使用GZIP和Zip压缩Java数据流

转载自 使用GZIP和Zip压缩Java数据流本文通过对数据压缩算法的简要介绍&#xff0c;然后以详细的示例演示了利用java.util.zip包实现数据的压缩与解压&#xff0c;并扩展到在网络传输方面如何应用java.util.zip包现数据压缩与解压综述 许多信息资料都或多或少的包含一些多余的…

Asp.net Core基于MVC框架实现PostgreSQL操作

简单介绍 Asp.net Core最大的价值在于跨平台、跨平台、跨平台。重要的事情说三遍。但是目前毕竟是在开发初期&#xff0c;虽然推出了1.0.0 正式版&#xff0c;但是其实好多功能还没有完善。比方说编译时的一些文件编码问题&#xff0c;辅助工具Tools的一些Bug&#xff0c;还有一…

sql高级查询

子查询&#xff1a;是嵌套在select ,insert ,update ,delete语句或者其他的子查询中的查询语句。 一、一般的使用方式&#xff1a;select * from 表1 where 列 运算符 &#xff08;子查询&#xff09;注意&#xff1a;1.先执行子查询&#xff0c;在执行外查询&#xff08;主查询…

小米miui系统已停止服务器,小米两款机型停止 MIUI 更新,明天发布最终体验版固件...

原标题&#xff1a;小米两款机型停止 MIUI 更新&#xff0c;明天发布最终体验版固件11 月 21 日消息&#xff0c; MIUI 官方预告 MIUI 于 2018 年 11 月 22 日发布小米手机 5 、红米 Note 3 全网通的最后一个 MIUI 10 体验版/开发版 8.11.22 &#xff0c;两款机型将不再支持后续…

Java压缩技术(一) ZLib

转载自 Java压缩技术&#xff08;一&#xff09; ZLib 有关ZLib可参见官方主页 http://www.zlib.net/ ZLib可以简单的理解为压缩/解压缩算法&#xff0c;它与ZIP、RAR等归档算法有所不同&#xff0c;与bzip2比较接近。 压缩工具代码如下&#xff1a; Java代码 /** * 2009-9-9…

【送书活动】机器学习项目开发实战

出版时间 2016-08-01 定价&#xff1a;59元 作者&#xff1a; Mathias Brandewinder是Microsoft F# 最有价值专家&#xff08;MVP&#xff09;&#xff0c;住在加州旧金山&#xff0c;在那里他为Clear Lines Consulting工作。作为一名当之无愧的数学极客&#xff0c;他很早就对…

刀剑斗神传只显示11个服务器,与官方服务器互通 《刀剑斗神传》电脑版即将上线...

乱世江湖动作MMO手游《刀剑斗神传》将于12月29日开启公测&#xff0c;为方便玩家更好的体验游戏&#xff0c;游戏将推出电脑版&#xff0c;并与iOS、安卓的官方服务器实现数据互通。不管是在公交地铁上用手机&#xff0c;还是在自己温馨的小居室用电脑&#xff0c;你可以选择自…

深入wepy源码:wpy文件编译过程

转载自 深入wepy源码&#xff1a;wpy文件编译过程wepy 是腾讯开源的一款小程序框架&#xff0c;主要通过预编译的手段&#xff0c;让开发者采用类 Vue 风格开发。 让我们一起看看&#xff0c; wepy 是如何实现预编译的。先放上一张官网的流程图&#xff0c;后面的分析可以参考该…

sql事务、视图和索引

一、事务&#xff1a;1.概念&#xff1a;是单个逻辑单元执行的一系列操作&#xff08;一个事务中有多个sql语句&#xff09;&#xff0c;这个操作作为一个整体一起提交&#xff0c;要么执行&#xff0c;要么都不执行&#xff0c;多个事务操作是一个不可分割的逻辑单元。2.事务的…

qq空间说说服务器维护,如何解决QQ空间说说发表不了

如何解决QQ空间说说发表不了我的今天也是这种情况几个qq都发表不了&#xff0c;都不知道怎么办了&#xff0c;然后过一会儿又能发表了但是现在有发表不了了...是空间的系统问题吧&#xff01;还有啊就是不要加什么敏感词汇不然也发表不了一、如果您打开是提示“服务器忙&#x…

Win10上运行Docker

1. 前言 Docker最近推出了可以运行在Win10和Mac上的稳定版本&#xff0c;让我们赶紧来体验一下。 Docker发布Mac和Windows 的目标非常简单——开发者可以更加简单方便地在研发机器上使用Docker。下面是此次版本所改进的地方&#xff1a; 更快更可靠——在本地开发环境上&#x…

sql serve存储过程

存储过程一.概念:预先编译好的sql程序&#xff0c;可以包含&#xff1a;操作数据、变量、控制语句&#xff0c;增删改查操作都可以&#xff0c;存储过程是保存在数据库中 的一个对象。二.好处&#xff1a;1.安全性更高2.减少了网络流量3.提高速度&#xff0c;性能更高4.模…

JAVA数据库连接池实现

转载自 JAVA数据库连接池实现连接池的管理用了了享元模式&#xff0c;这里对连接池进行简单设计。 一、设计思路1.连接池配置属性DBbean&#xff1a;里面存放可以配置的一些属性2.连接池接口IConnectionPool&#xff1a;里面定义一些基本的获取连接的一些方法3.接口实现Conne…

在.NET开发面向Oracle数据库的应用程序

其实这个不是一个什么新的话题。但是之前在多次项目中&#xff0c;总是遇到大家针对Oracle数据库的访问时&#xff0c;会有各种各样的问题&#xff0c;最基本的就是要在客户端安装各种client&#xff0c;版本不一样的话还有各种问题。 静下心来看看&#xff0c;其实也没有那么难…

服务器ubuntu系统版本选型原则,系统集成 - 选择Ubuntu服务器版操作系统的六大理由_服务器应用_Linux公社-Linux系统门户网站...

二. 系统集成(1)集成现有的系统Ubuntu服务器版本用常用的身份认证方式和服务入口工具简单地集成企业现有的客户/服务器结构。我们都知道系统集成技术的重要性&#xff0c;这也是Ubuntu团队花费大量时间研究如何实现服务器与基础设施简单融合的原因。(2)简单的验证方式验证功能对…

sql serve基础

一、数据库登录名与数据库用户1.登录名登录服务器2.数据库用户访问具体数据库二者要建立映射关系二、数据库文件&#xff1a;1.主数据文件&#xff1a;*.mdf&#xff08;必须&#xff09;2.辅助数据文件&#xff1a;*.ndf(可选)3.日志文件&#xff1a;*.ldf&#xff08;必须&am…

sql基本操作语句

sql: 结构化查询语言T-SQL:sql server数据库中用的查询语言数据库对象操作&#xff1a;一、建库&#xff1a;二、建表&#xff1a;三、数据操作1.添加INSERT [INTO] 表名 (列列表) VALUES(值列表)a. 列列表和值列表一一对应&#xff08;顺序和个数&#xff09;b。可以为null的…

云服务器mqtt协议,云服务器mqtt协议

云服务器mqtt协议 内容精选换一换IPv6的使用&#xff0c;可以有效弥补IPv4网络地址资源有限的问题。如果当前云服务器使用IPv4&#xff0c;那么启用IPv6后&#xff0c;云服务器可在双栈模式下运行&#xff0c;即云服务器可以拥有两个不同版本的IP地址&#xff1a;IPv4地址和IPv…

常用的推荐算法解析

转载自 常用的推荐算法解析1. 前言随着互联网技术和社会化网络的发展&#xff0c;每天有大量包括博客&#xff0c;图片&#xff0c;视频&#xff0c;微博等等的信息发布到网上。传统的搜索技术已经不能满足用户对信息发现的需求&#xff0c;原因有多种&#xff0c;可能是用户…