EF增删库查
- public async Task<bool> Add(fu_ocrresult model)
- {
- using (var db = new GENEModel())
- {
- //1.将实体对象 a.加入 EF 对象容器中,并 b.获取 伪包装类对象
- DbEntityEntry<fu_ocrresult> entry = db.Entry<fu_ocrresult>(model);
- //2.包装类对象的状态设置
- entry.State = EntityState.Added;
- try
- {
- //4.提交到数据库 完成修改
- var rtn = await db.SaveChangesAsync();
- if (rtn > )
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- catch (Exception ex)
- {
- LogHelper.Error(this, ex);
- return false;
- }
- }
- }
- public async Task<bool> Update(fu_ocrresult model)
- {
- using (var db = new GENEModel())
- {
- //1.将实体对象 a.加入 EF 对象容器中,并 b.获取 伪包装类对象
- DbEntityEntry<fu_ocrresult> entry = db.Entry<fu_ocrresult>(model);
- //2.包装类对象的状态设置
- entry.State = EntityState.Modified;
- try
- {
- //4.提交到数据库 完成修改
- var rtn = await db.SaveChangesAsync();
- if (rtn > )
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- catch (Exception ex)
- {
- LogHelper.Error(this, ex);
- return false;
- }
- }
- }
- }
- /// <summary>
- /// 获取识别明细
- /// </summary>
- /// <param name="ocrresultid"></param>
- /// <returns></returns>
- public async Task<fu_ocrresult> GetOcrResult(string ocrresultid)
- {
- using (var db = new GENEModel())
- {
- var query = db.fu_ocrresult.Where(x => x.OCRResultID.Equals(ocrresultid));
- try
- {
- var sql = query.ToString();
- LogHelper.Info(this, sql);
- return await query.FirstOrDefaultAsync();
- }
- catch (Exception ex)
- {
- LogHelper.Error(this, ex);
- return null;
- }
- }
- }
- //await关键字标记的异步任务,这个异步任务必须是以Task或者Task<TResult>作为返回值的
- public class ValidateDal
- {
- #region 此类的实例化
- private static ValidateDal fwkUersDAL = null;
- /// <summary>
- /// 此类的实例化
- /// </summary>
- /// <returns></returns>
- public static ValidateDal IntiStance()
- {
- if (fwkUersDAL == null)
- {
- fwkUersDAL = new ValidateDal();
- }
- return fwkUersDAL;
- }
- #endregion
- ghcConetent dbContent = new ghcConetent();
- /// <summary>
- /// 用户登陆
- /// </summary>
- /// <param name="userName">用户名</param>
- /// <param name="password">密码</param>
- public async Task<List<FWKUSER>> CommitValidate(string userName, string password)
- {
- var result = from c in dbContent.FWK_USER
- where (c.LOGIN_NAME == userName && c.PASSWORD == password)
- select new FWKUSER
- {
- LOGIN_NAME = c.LOGIN_NAME,
- USER_ID = c.USER_ID,
- EMPLOYEE_ID = c.EMPLOYEE_ID
- };
- return await result.ToListAsync();
- }
- /// <summary>
- /// 查询用户系统角色
- /// </summary>
- /// <param name="userName">用户账号</param>
- /// <param name="sysCode">系统代码</param>
- /// <returns></returns>
- public async Task<List<FWKUSER>> GetUserRoleBySysCode(string userName,string sysCode)
- {
- //左连接
- var result = from c in dbContent.FWK_USER
- join r in dbContent.FWK_ROLE on c.ROLE_CODE equals r.ROLE_CODE into g
- from cr in g.DefaultIfEmpty()
- join s in dbContent.FWK_SYSTEM on c.SYSTEM_ID equals s.SYSTEM_ID into g2
- from crs in g2.DefaultIfEmpty()
- where (c.LOGIN_NAME == userName && crs.SYSTEM_ID == sysCode)
- select new FWKUSER
- {
- LOGIN_NAME = c.LOGIN_NAME,
- ROLE_CODE = c.ROLE_CODE,
- ROLE_NAME = cr.ROLE_NAME,
- SYSTEM_ID = crs.SYSTEM_ID,
- SYSTEM_CODE = crs.SYSTEM_CODE,
- SYSTEM_NAME = crs.SYSTEM_NAME
- };
- return await result.ToListAsync();
- }
- /// <summary>
- /// 根据用户名密码获取菜单Id
- /// </summary>
- /// <param name="userName">用户名</param>
- /// <param name="password">密码</param>
- /// <returns></returns>
- public async Task<List<fwkMenu>> GetMenuId(string userName, string password)
- {
- var result = from c in dbContent.FWK_USER
- join f in dbContent.FWK_USER_SYS_ROLE_REL on c.USER_ID equals f.USER_ID into g
- from cf in g.DefaultIfEmpty()
- join w in dbContent.FWK_ROLE on cf.ROLE_CODE equals w.ROLE_CODE into g2
- from cfw in g2.DefaultIfEmpty()
- join m in dbContent.FWK_ROLE_MENU_REL on cfw.ROLE_CODE equals m.ROLE_CODE into g3
- from cfwm in g3.DefaultIfEmpty()
- where(c.LOGIN_NAME.Equals(userName) && c.PASSWORD.Equals(password))
- select new fwkMenu
- {
- Menu_Id = cfwm.MENU_ID
- };
- return await result.ToListAsync();
- }
- }
- #region 用户及科室关系操作
- /// <summary>
- /// 更新用户及科室关系操作
- /// </summary>
- /// <param name="model">用户及科室关系model</param>
- /// <returns></returns>
- public async Task<bool> UpdateOrg(FWK_ORG_ROLE_REL model)
- {
- Boolean result = false;
- using (var tran = dbConetent.Database.BeginTransaction())
- {
- var query = from c in dbConetent.FWK_ORG_ROLE_REL
- where (c.USER_ID.Equals(model.USER_ID))
- select c;
- foreach (var singerModel in query)
- {
- singerModel.ORG_ID = model.ORG_ID;
- singerModel.USER_ID = model.USER_ID;
- DbEntityEntry<FWK_ORG_ROLE_REL> entry = dbConetent.Entry<FWK_ORG_ROLE_REL>(singerModel);
- entry.State = EntityState.Modified;
- int trn = ;
- try
- {
- trn = await dbConetent.SaveChangesAsync();
- tran.Commit();
- if (trn > )
- {
- result = true;
- }
- else
- {
- result = false;
- }
- }
- catch (Exception ex)
- {
- LogHelper.Info(this, ex);
- tran.Rollback();
- result = false;
- }
- }
- return result;
- }
- }
- /// <summary>
- /// 删除用户及科室关系
- /// </summary>
- /// <param name="model">用户及科室关系model</param>
- /// <returns></returns>
- public async Task<bool> DeleteOrg(FWK_ORG_ROLE_REL model)
- {
- Boolean result = false;
- var query = from c in dbConetent.FWK_ORG_ROLE_REL
- where (c.USER_ID.Equals(model.USER_ID) && c.ORG_ID.Equals(model.ORG_ID))
- select c;
- using (var tran = dbConetent.Database.BeginTransaction())
- {
- foreach (var singerModel in query)
- {
- DbEntityEntry<FWK_ORG_ROLE_REL> entry = dbConetent.Entry<FWK_ORG_ROLE_REL>(singerModel);
- entry.State = EntityState.Deleted;
- try
- {
- int rtn = await dbConetent.SaveChangesAsync();
- tran.Commit();
- if (rtn > )
- {
- result = true;
- }
- else
- {
- result = false;
- }
- }
- catch (Exception ex)
- {
- LogHelper.Info(this, ex);
- tran.Rollback();
- result = false;
- }
- }
- return result;
- }
- }
- /// <summary>
- /// 增加用户及科室关系
- /// </summary>
- /// <param name="model">用户及科室关系model</param>
- /// <returns></returns>
- public async Task<bool> InsertOrg(FWK_ORG_ROLE_REL model)
- {
- Boolean result = false;
- using (var tran = dbConetent.Database.BeginTransaction())
- {
- FWK_ORG_ROLE_REL mode = new FWK_ORG_ROLE_REL();
- mode.USER_ID = model.USER_ID;
- mode.ORG_ID = model.ORG_ID;
- mode.AUOT_ID = model.AUOT_ID;
- DbEntityEntry<FWK_ORG_ROLE_REL> entry = dbConetent.Entry<FWK_ORG_ROLE_REL>(mode);
- entry.State = EntityState.Added;
- try
- {
- int rtn = await dbConetent.SaveChangesAsync();
- tran.Commit();
- if (rtn > )
- {
- result = true;
- }
- else
- {
- result = false;
- }
- }
- catch (Exception ex)
- {
- LogHelper.Info(this, ex);
- tran.Rollback();
- result = false;
- }
- return result;
- }
- }
- #endregion
EF增删库查的更多相关文章
- 库增删该查,表增删该查,记录增删该查,表与表关系(多对多,多对一,一对一),mysql用户管理
库增删该查 增加库 create database db1 create database db1 charset="gbk 查看库 show databases 查看所有库 show cr ...
- EF扩展库(批量操作)
EF删除和修改数据只能先从数据库取出,然后再进行删除 delete from Table1 where Id>5; update Table1 set Age=10; 我们需要这样操作 //删除 ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(5)-EF增删改查by糟糕的代码
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(5)-EF增删改查by糟糕的代码 上一讲我们创建了一系列的解决方案,我们通过一个例子来看看层与层之间的关系 ...
- 分享一个自己写的MVC+EF “增删改查” 无刷新分页程序
分享一个自己写的MVC+EF “增删改查” 无刷新分页程序 一.项目之前得添加几个组件artDialog.MVCPager.kindeditor-4.0.先上几个效果图. 1.首先建立一个数 ...
- EF 跨库查询
原因:最近公司项目,遇到一个ef跨库查询的问题.(只是跨库,并不是跨服务器哈) 主要我们的一些数据,譬如地址,城市需要查询公共资料库. 但是本身我的程序设计采用的是ef框架的.因此为这事花费了1天时间 ...
- 【EF】EF扩展库(批量操作)
EF删除和修改数据只能先从数据库取出,然后再进行删除 delete from Table1 where Id>5; update Table1 set Age=10; 我们需要这样操作 //删除 ...
- WPF MVVM+EF增删改查 简单示例(二) 1对1 映射
WPF MVVM+EF增删改查 简单示例(一)实现了对学生信息的管理. 现在需求发生变更,在录入学生资料的时候同时需要录入学生的图片信息,并且一名学生只能有一张图片资料.并可对学生的图片资料进行更新. ...
- Mybatis入门——基础方式的增删该查、mapper动态代理方式的CRUD、类型转换器
一.基础方式的增删该查: 1.mybatis约定:输入参数parameterType和输出参数resulrType在形式上只能有一个. 2.如果输入/输出参数:是简单类型(8个基本类型加String) ...
- EF里单个实体的增查改删以及主从表关联数据的各种增删 改查
本文目录 EF对单个实体的增查改删 增加单个实体 查询单个实体 修改单个实体 删除单个实体 EF里主从表关联数据的各种增删改查 增加(增加从表数据.增加主从表数据) 查询(根据主表找从表数据.根据从表 ...
随机推荐
- 菜鸟快飞之JavaScript对象、原型、继承(三)
正文之前需要声明的一点是,菜鸟系列博文全是基于ES5的,不考虑ES6甚至更高版本. 继承 由于我个人不是学计算机的,所以对于很多东西只是知其然,不知其所以然.就像这个继承,刚开始学JavaScript ...
- ASP.NET MVC 5 01 - ASP.NET概述
本篇目录: ASP.NET 概述 .NET Framework 与 ASP.NET ASP.NET MVC简介 ASP.NET的特色和优势 典型案例 ▁▃▅ ASP.NET概述 ▅▃▁ 目前开发B/S ...
- Tomcat配置内存和远程debug端口
一.配置内存 在/tomcat/bin/catalina.sh 中添加: JAVA_OPTS='-server -Xms2048m -Xmx2048m -XX:NewSize=768m -XX:Max ...
- EasyUI combobox
高度自适应 data-options="required:true,editable:false,panelHeight:'auto',panelMaxHeight:170" 加上 ...
- jsmooth compilation failed error null
JSmooth 0.9.9-7 在将 jar 文件打包成 exe 文件时报错:jsmooth compilation failed error null 原因,没有指定 logo 图片文件. http ...
- HTML中使图片居中显示
注:imageId为图片id<style type="text/css"> #imageId{ display:block; position:relative; ma ...
- Mac新建文件夹、txt文件、无格式文件
新建文件夹: mkdir test 新建txt touch test.txt 新建无后缀格式文件 touch test 如果要删除文件夹 rm -r -f test
- rsync同步
本地同步: rsync -avz /boot /test C/S架构: 远程同步:rsync+ssh 远程浏览器目录文件:rsync 用户@192.168.0.250:/boot 下行:rsync ...
- 迭代字典中的key和value
字典是python中十分重要的一个内容. 今天我们来谈谈,在一个 for 循环中,能否同时迭代 key和value?当然可以咯. dict 对象的 items() 方法返回的值: >>&g ...
- 异常处理之“The remote certificate is invalid according to the validation praocedure.”
参考文章:http://brainof-dave.blogspot.com.au/2008/08/remote-certificate-is-invalid-according.html 参考文章:h ...