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 + ...
随机推荐
- python装饰器@用法
这个是我见过比较好的讲解链接: [廖雪峰的官方网站 - 装饰器]
- cf 1082abc
还是菜,两题dp一题模拟 /* 反正就两个方向,往左或者往右,如果都不行,那就是-1 */ #include<bits/stdc++.h> using namespace std; int ...
- Linux系统上安装docker + Compose并创建WordPress
安装docker可参考我的另一篇文章 安装Compose Docker Compose 是 Docker 官方编排(Orchestration)项目之一, 负责快速在集群中部署分布式应用. 方法一 1 ...
- 学习Struts2经验总结
一.struts 访问路径问题 1) Struts2的思想:主要围着“action”转,只要找到“action”它就知道自己该干嘛了. 首先配置struts.xml ,我们可以明白的看到,action ...
- Ext.Js核心函数( 三)
ExtJs 核心函数简介 1.ExtJs提供的常用函数2.get.fly.getCmp.getDom.getBody.getDoc3.query函数和select函数4.encode函数和decode ...
- Python内置数据结构--列表
本节内容: 列表 元组 字符串 集合 字典 本节先介绍列表. 一.列表 一种容器类型.列表可以包含任何种类的对象,比如说数字.子串.嵌套其他列表.嵌套元组. 任意对象的有序集合,通过索引访问其中的元素 ...
- hdu 2544 hdu 1874 poj 2387 Dijkstra 模板题
hdu 2544 求点1到点n的最短路 无向图 Sample Input2 1 //结点数 边数1 2 3 //u v w3 31 2 52 3 53 1 20 0 Sample Output32 ...
- Map集合遍历的四种方式理解和简单使用
~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值 1:无非就是通过map.keySet()获取到值,然后根据键获取到值 for(String s:m ...
- [转] ES6 import/export:模块导入导出方式
export导出语法 // default exports export default 42; export default {}; export default []; export defaul ...
- js随机生成颜色的方法
function getRandomColor() { return '#' + (Math.random() * 0xffffff << 0).toString(16); }