EF6 简单增删改查示例代码
示例一:
private DbContext _dbContext;
public DbContext CurrentContext
{
get
{
if (_dbContext == null)
{
_dbContext = new TransitContext();
}
return _dbContext;
}
} /// <summary>
/// 执行Sql查询
/// </summary>
/// <typeparam name="TEntity"></typeparam>
/// <param name="strSql"></param>
/// <param name="paramObjects"></param>
/// <returns></returns>
public List<TEntity> SqlQuery<TEntity>(string strSql, params Object[] paramObjects) where TEntity : class
{
if (paramObjects == null)
{
paramObjects = new object[0];
}
return this.CurrentContext.Database.SqlQuery<TEntity>(strSql, paramObjects).ToList();
} /// <summary>
/// 查询
/// </summary>
/// <param name="predicate"></param>
/// <returns></returns>
public IQueryable<TEntity> Search<TEntity>(Expression<Func<TEntity, bool>> predicate) where TEntity : class
{
return CurrentContext.Set<TEntity>().Where(predicate);
} /// <summary>
/// 查询全部
/// </summary>
/// <returns></returns>
public IQueryable<TEntity> FindAll<TEntity>() where TEntity : class
{
return CurrentContext.Set<TEntity>();
} /// <summary>
/// 插入
/// </summary>
/// <param name="entity"></param>
/// <param name="isSave"></param>
public void Insert<TEntity>(TEntity entity, bool isSave = true) where TEntity : class
{
CurrentContext.Set<TEntity>().Add(entity);
if (isSave)
{
CurrentContext.SaveChanges();
}
} /// <summary>
/// 批量插入
/// </summary>
/// <param name="entitys"></param>
/// <param name="isSave"></param>
public void Insert<TEntity>(List<TEntity> entitys, bool isSave = true) where TEntity : class
{
foreach (var entity in entitys)
{
CurrentContext.Set<TEntity>().Add(entity);
}
if (isSave)
{
CurrentContext.SaveChanges();
}
} /// <summary>
/// 更新
/// </summary>
/// <param name="entity"></param>
/// <param name="isSave"></param>
public void Update<TEntity>(TEntity entity, bool isSave = true) where TEntity : class
{
var local = FindLocal(CurrentContext, entity);
if (local == null)
{
throw new Exception("要更新的实体不存在");
}
ObjectMapper.CopyProperties(entity, local);
if (isSave)
{
CurrentContext.SaveChanges();
}
} /// <summary>
/// 批量更新
/// </summary>
/// <param name="entities"></param>
/// <param name="isSave"></param>
public void Update<TEntity>(List<TEntity> entities, bool isSave = true) where TEntity : class
{
foreach (var entity in entities)
{
var local = FindLocal(CurrentContext, entity);
if (local == null)
{
throw new Exception("要更新的实体不存在");
}
ObjectMapper.CopyProperties(entity, local);
}
if (isSave)
{
CurrentContext.SaveChanges();
}
} /// <summary>
/// 删除
/// </summary>
/// <param name="entity"></param>
/// <param name="isSave"></param>
public void Delete<TEntity>(TEntity entity, bool isSave = true) where TEntity : class
{
var local = FindLocal(CurrentContext, entity);
if (local == null)
{
throw new Exception("要删除的实体不存在");
}
CurrentContext.Entry<TEntity>(local).State = EntityState.Deleted;
if (isSave)
{
CurrentContext.SaveChanges();
}
}
示例二:

EF6 简单增删改查示例代码的更多相关文章
- SpringMVC之简单的增删改查示例(SSM整合)
本篇文章主要介绍了SpringMVC之简单的增删改查示例(SSM整合),这个例子是基于SpringMVC+Spring+Mybatis实现的.有兴趣的可以了解一下. 虽然已经在做关于SpringMVC ...
- springboot(十五):springboot+jpa+thymeleaf增删改查示例
这篇文章介绍如何使用jpa和thymeleaf做一个增删改查的示例. 先和大家聊聊我为什么喜欢写这种脚手架的项目,在我学习一门新技术的时候,总是想快速的搭建起一个demo来试试它的效果,越简单越容易上 ...
- (转)Spring Boot (十五): Spring Boot + Jpa + Thymeleaf 增删改查示例
http://www.ityouknow.com/springboot/2017/09/23/spring-boot-jpa-thymeleaf-curd.html 这篇文章介绍如何使用 Jpa 和 ...
- Spring Boot (十五): Spring Boot + Jpa + Thymeleaf 增删改查示例
这篇文章介绍如何使用 Jpa 和 Thymeleaf 做一个增删改查的示例. 先和大家聊聊我为什么喜欢写这种脚手架的项目,在我学习一门新技术的时候,总是想快速的搭建起一个 Demo 来试试它的效果,越 ...
- ado.net的简单数据库操作(三)——简单增删改查的实际应用
果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...
- Spring Boot + Jpa + Thymeleaf 增删改查示例
快速上手 配置文件 pom 包配置 pom 包里面添加 Jpa 和 Thymeleaf 的相关包引用 <dependency> <groupId>org.springframe ...
- Spring Boot(十五):spring boot+jpa+thymeleaf增删改查示例
Spring Boot(十五):spring boot+jpa+thymeleaf增删改查示例 一.快速上手 1,配置文件 (1)pom包配置 pom包里面添加jpa和thymeleaf的相关包引用 ...
- spring boot(十五)spring boot+thymeleaf+jpa增删改查示例
快速上手 配置文件 pom包配置 pom包里面添加jpa和thymeleaf的相关包引用 <dependency> <groupId>org.springframework.b ...
- 国产化之路-统信UOS + Nginx + Asp.Net MVC + EF Core 3.1 + 达梦DM8实现简单增删改查操作
专题目录 国产化之路-统信UOS操作系统安装 国产化之路-国产操作系统安装.net core 3.1 sdk 国产化之路-安装WEB服务器 国产化之路-安装达梦DM8数据库 国产化之路-统信UOS + ...
随机推荐
- dellR720服务器设置光盘引导流程安装cenos7
1.开机,按F10,进入系统引导界面,选择加载系统选项,并选择redhat 7.1选项 系统提示不支持,选择仍然继续,根据提示设置BIOS设置启动,重启 2.根据提示按F11进入BIOS启动设置,选择 ...
- PYTHON-模块 sys os random shutil
import sys # 环境变量# print(sys.path)# # 查看已经加载的模块# print(sys.modules)# # 获取终端调用时的参数# print(sys.argv)# ...
- 一次TIME_WAIT和CLOSE_WAIT故障和解决办法
昨天解决了一个curl调用错误导致的服务器异常,具体过程如下: 里头的分析过程有提到,通过查看服务器网络状态检测到服务器有大量的CLOSE_WAIT的状态. 在服务器的日常维护过程中,会经常用到下面的 ...
- Oracle11g_OCM 课堂教学目录表
注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...
- Json学习整理
1:javascript对JSON的支持 2:java对JSON的支持 alibaba->fastjson 封装工具类: import com.alibaba.fastjson.JSONObje ...
- sql基础笔记备忘
MySQL中定义数据字段的类型对你数据库的优化是非常重要的. MySQL支持多种类型,大致可以分为三类:数值.日期/时间和字符串(字符)类型. 数值类型:tinyint smallint medium ...
- HTML5布局
完整示例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- 2018-2019-2 网络对抗技术 20165333 Exp2 后门原理与实践
实验内容 1.使用netcat获取主机操作Shell,cron启动 2.使用socat获取主机操作Shell, 任务计划启动 3.使用MSF meterpreter(或其他软件)生成可执行文件,利用n ...
- 【C++】拷贝构造函数(深拷贝,浅拷贝)详解
一.什么是拷贝构造函数 首先对于普通类型的对象来说,它们之间的复制是很简单的,例如: ; int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量. 下面看一个类对 ...
- day5模块学习--re正则模块
1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十 ...