AppService 层使用nuget 添加 EFCore.BulkExtensions 引用

 using Abp.Application.Services.Dto;
using Abp.Domain.Repositories;
using Abp.EntityFrameworkCore.Repositories;
using Abp.UI;
using EFCore.BulkExtensions;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WebProject.Authorization.Accounts; namespace WebProject.Article
{
public class ArticleAppService : WebProjectAppServiceBase, IArticleAppService
{
private readonly IRepository<Models.Article> _articleRepository;
public ArticleAppService(IRepository<Models.Article> articleRepository)
{
_articleRepository = articleRepository;
}
/// <summary>
/// 批量添加
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public string BulkInsert(EntityDto input)
{
Stopwatch watch = new Stopwatch();
watch.Start();
List<Models.Article> list = new List<Models.Article>();
for (int i = ; i < input.Id; i++)
{
var entity = new Models.Article();
entity.CateId = ;
entity.Title = $"BulkInsert娱乐{1}";
list.Add(entity);
} _articleRepository.GetDbContext().BulkInsert(list);//GetDbContext 需要添加Abp.EntityFrameworkCore.Repositories引用
watch.Stop(); string time = watch.ElapsedMilliseconds.ToString();
return time;
}
/// <summary>
/// 批量删除
/// </summary>
/// <returns></returns>
public string BulkDelete()
{
Stopwatch watch = new Stopwatch();
watch.Start();
_articleRepository.GetAll().BatchDelete();
//_articleRepository.GetAll().Where(m=>m.Id>100).BatchDelete();
watch.Stop();
string time = watch.ElapsedMilliseconds.ToString();
return time;
}
/// <summary>
/// 批量修改
/// </summary>
/// <returns></returns>
public string BatchUpdate()
{
Stopwatch watch = new Stopwatch();
watch.Start();
_articleRepository.GetAll().BatchUpdate(new Models.Article { Title = "Updated娱乐" });
//_articleRepository.GetAll().Where(m=>m.Id>100).BatchUpdate(new Models.Article { Title = "Updated娱乐" });
watch.Stop();
string time = watch.ElapsedMilliseconds.ToString();
return time;
} }
}

ABP 框架集成EF批量增加、删除、修改只针对使用mmsql的的更多相关文章

  1. Nodejs之MEAN栈开发(九)---- 用户评论的增加/删除/修改

    由于工作中做实时通信的项目,需要用到Nodejs做通讯转接功能,刚开始接触,很多都不懂,于是我和同事就准备去学习nodejs,结合nodejs之MEAN栈实战书籍<Getting.MEAN.wi ...

  2. 在Javascript操作JSON对象,增加 删除 修改

    在Javascript操作JSON对象,增加删除修改全有的,详情见代码 <script type="text/javascript"> var jsonObj2 = { ...

  3. AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层

    AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层 AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层我理解的图层的作用大概是把 ...

  4. [JavaWeb基础] 004.用JSP + SERVLET 进行简单的增加删除修改

    上一次的文章,我们讲解了如何用JAVA访问MySql数据库,对数据进行增加删除修改查询.那么这次我们把具体的页面的数据库操作结合在一起,进行一次简单的学生信息操作案例. 首先我们创建一个专门用于学生管 ...

  5. c#调用存储过程实现批量增加和修改数据

    1 例如当我在编辑表格数据,一次编辑了多行需要保存到数据库时,就需要判断数据库中是否已经存在,存在则修改,不存在则新增一条或多条数据,即所谓批量增加或者跟新数据. 首先需要构建数据包,把要添加或者跟新 ...

  6. ABP框架 - 集成OWIN

    文档目录 如果你在应用中同时使用Asp.net Mvc和Asp.net Web API,你需要在你的项目里添加Abp.Owin的nuget包(通常是Web项目)然后在你的OWIN的Startup文件里 ...

  7. Spring Boot 增加删除修改 批量

    1.批量删除  a.自定义Repositoy中写 前台处理https://blog.csdn.net/yhflyl/article/details/81557670首先前台先要获取所有的要删除数据的I ...

  8. EF 批量更新删除(linq篇)

    刚开始用EF很多东西都不会用,事后想想都很简单的东西总是用很麻烦的方式实现 1:  EF的联合查询 inner join  很久很久以前我是这么写一个列表展示的,其中有两个字段Contractor和M ...

  9. ztree树形菜单的增加删除修改和换图标

    首先需要注意一点,如果有研究过树形菜单,就会发现实现删除和修改功能特别简单,但是增加却有一点复杂.造成这个现象是ztree树形菜单的历史遗留问题.大概是之前的版本没有增加这个功能,后来的版本加上了这个 ...

随机推荐

  1. 1、Android-活动(上)

    1.1.活动是什么 活动(Activity)是最容易吸引用户的地方,他是一种可以包含用户界面的组件 主要用于和用户进行交互 一个用户可以包含零个或多个活动,不包含活动的程序少见 1.2.活动的基本用法 ...

  2. textarea多行文本框自适应高度

    <script src="https://cdn.bootcss.com/jquery/1.8.1/jquery.js"></script> <scr ...

  3. 指定Android adb的启动端口

    串口执行: setprop service.adb.tcp.port stop adbd start adbd 一般机器默认是5555为adb端口,但是今天遇到的一台机器以5037为默认端口,开发机器 ...

  4. 【Javascript-基础-Object】创建对象

    创建单个对象--字面量方式 创建多个对象 使用字面量方式创建多个对象时,会产生大量的重复代码.开发者在寻找创建多个对象方法的过程中,基本经历了一下集中方法: 工厂模式 > 构造函数模式 > ...

  5. LVS负载均衡机制之LVS-DR模式工作原理以及简单配置

    本博文主要简单介绍一下LVS负载均衡集群的一个基本负载均衡机制:LVS-DR:如有汇总不当之处,请各位在评论中多多指出. LVS-DR原理: LVS的英文全称是Linux Virtual Server ...

  6. tomcat 远程debug配置,教你远程调试代码,解决线上故障

      IDEA远程DEBUG Tomcat很简单,配置如下: 1.修改tomcat服务器配置 打开tomcat/bin/catalina.sh 在空白处添加如下参数 CATALINA_OPTS=&quo ...

  7. js数组定义和方法 (包含ES5新增数组方法)

    数组Array 1. 数组定义 一系列数据的集合成为数组.数组的元素可以为任何类型的数据(包括数组,函数等),每个元素之间用逗号隔开,数组格式:[1,2,3]. 2. 数组创建方式 (1) 字面量方法 ...

  8. Delphi Firemonkey在主线程 异步调用函数(延迟调用)

    先看下面的FMX.Layouts.pas中一段代码 procedure TCustomScrollBox.MouseDown(Button: TMouseButton; Shift: TShiftSt ...

  9. urllib库使用方法 2 parse

    import urllib.parse #url.parse用法包含三个方法:quote url, unquote rul, urlencode#quote url 编码函数,url规范只识别字母.数 ...

  10. parted 命令学习

    背景:fdisk命令是针对MBR分区进行操作,MBR分区因为自身设计原因,不能处理大于2TB的硬盘,并且只能有4个分区.针对大于2TB的硬盘,需要采用GPT分区,使用parted命令进行操作 part ...