ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(7)- EF增删改查
前言
上一节创建了实体数据库,这次我们来看看怎么操作这个实体
代码实现
新建一个UserInfoController的控制器:不需要写什么代码,系统自动生成Index方法:
创建IDAL,DAL,IBLL,BLL的代码:
- using BYCMS.Model;
- using System.Linq;
- namespace BYCMS.IDAL
- {
- public interface IUserInfoRepository
- {
- /// <summary>
- /// 获取列表
- /// </summary>
- /// <param name="db">数据库上下文</param>
- /// <returns>数据列表</returns>
- IQueryable<UserInfo> GetList(DBContainer db);
- /// <summary>
- /// 创建一个实体
- /// </summary>
- /// <param name="entity">实体</param>
- int Create(UserInfo entity);
- /// <summary>
- /// 删除一个实体
- /// </summary>
- /// <param name="entity">主键ID</param>
- int Delete(int id);
- /// <summary>
- /// 修改一个实体
- /// </summary>
- /// <param name="entity">实体</param>
- int Edit(UserInfo entity);
- /// <summary>
- /// 获得一个实体
- /// </summary>
- /// <param name="id">id</param>
- /// <returns>实体</returns>
- UserInfo GetById(int id);
- /// <summary>
- /// 判断一个实体是否存在
- /// </summary>
- bool IsExist(int id);
- }
- }
IDAL层-IUserInfoRepository
- using BYCMS.IDAL;
- using BYCMS.Model;
- using System.Data.Entity;
- using System.Linq;
- namespace BYCMS.DAL
- {
- public class UserInfoRepository : IUserInfoRepository
- {
- /// <summary>
- /// 创建一个实体
- /// </summary>
- /// <param name="entity">实体</param>
- /// <returns></returns>
- public int Create(UserInfo entity)
- {
- using (DBContainer db = new DBContainer())
- {
- db.Set<UserInfo>().Add(entity);
- return db.SaveChanges();
- }
- }
- /// <summary>
- /// 删除一个实体
- /// </summary>
- /// <param name="id">主键ID</param>
- /// <returns></returns>
- public int Delete(int id)
- {
- using (DBContainer db = new DBContainer())
- {
- UserInfo entity = db.UserInfoSet.Find(id);
- db.Set<UserInfo>().Remove(entity);
- return db.SaveChanges();
- }
- }
- /// <summary>
- /// 修改一个实体
- /// </summary>
- /// <param name="entity">实体</param>
- /// <returns></returns>
- public int Edit(UserInfo entity)
- {
- using (DBContainer db = new DBContainer())
- {
- db.Set<UserInfo>().Attach(entity);
- db.Entry(entity).State = EntityState.Modified;
- return db.SaveChanges();
- }
- }
- /// <summary>
- /// 获得一个实体
- /// </summary>
- /// <param name="id">主键ID</param>
- /// <returns></returns>
- public UserInfo GetById(int id)
- {
- using (DBContainer db = new DBContainer())
- {
- return db.UserInfoSet.Find(id);
- }
- }
- /// <summary>
- /// 获取列表
- /// </summary>
- /// <param name="db"></param>
- /// <returns></returns>
- public IQueryable<UserInfo> GetList(DBContainer db)
- {
- IQueryable<UserInfo> list = db.UserInfoSet.AsQueryable();
- return list;
- }
- /// <summary>
- /// 判断一个实体是否存在
- /// </summary>
- /// <param name="id">主键ID</param>
- /// <returns></returns>
- public bool IsExist(int id)
- {
- using (DBContainer db = new DBContainer())
- {
- UserInfo entity = GetById(id);
- if (entity != null)
- return true;
- return false;
- }
- }
- }
- }
DAL层-UserInfoRepository
- using BYCMS.Model;
- using System.Collections.Generic;
- namespace BYCMS.IBLL
- {
- public interface IUserInfoBLL
- {
- /// <summary>
- /// 获取列表
- /// </summary>
- /// <param name="pager">JQgrid分页</param>
- /// <param name="queryStr">搜索条件</param>
- /// <returns>列表</returns>
- List<UserInfo> GetList();
- /// <summary>
- /// 创建一个实体
- /// </summary>
- /// <param name="errors">持久的错误信息</param>
- /// <param name="model">模型</param>
- /// <returns>是否成功</returns>
- bool Create(UserInfo model);
- /// <summary>
- /// 删除一个实体
- /// </summary>
- /// <param name="errors">持久的错误信息</param>
- /// <param name="id">id</param>
- /// <returns>是否成功</returns>
- bool Delete(int id);
- /// <summary>
- /// 修改一个实体
- /// </summary>
- /// <param name="errors">持久的错误信息</param>
- /// <param name="model">模型</param>
- /// <returns>是否成功</returns>
- bool Edit(UserInfo model);
- /// <summary>
- /// 根据ID获得一个Model实体
- /// </summary>
- /// <param name="id">id</param>
- /// <returns>Model实体</returns>
- UserInfo GetById(int id);
- /// <summary>
- /// 判断是否存在实体
- /// </summary>
- /// <param name="id">主键ID</param>
- /// <returns>是否存在</returns>
- bool IsExist(int id);
- }
- }
IBLL层-IUserInfoBLL
- using BYCMS.Common;
- using BYCMS.DAL;
- using BYCMS.IBLL;
- using BYCMS.IDAL;
- using BYCMS.Model;
- using System.Collections.Generic;
- using System.Linq;
- namespace BYCMS.BLL
- {
- public class UserInfoBLL : IUserInfoBLL
- {
- DBContainer db = new DBContainer();
- IUserInfoRepository rep = new UserInfoRepository();
- /// <summary>
- /// 创建一个实体
- /// </summary>
- /// <param name="errors"></param>
- /// <param name="model"></param>
- /// <returns></returns>
- public bool Create(UserInfo model)
- {
- if (rep.Create(model) == )
- {
- return true;
- }
- return false;
- }
- /// <summary>
- /// 根据id删除实体
- /// </summary>
- /// <param name="errors"></param>
- /// <param name="id"></param>
- /// <returns></returns>
- public bool Delete(int id)
- {
- if(rep.Delete(id) > )
- {
- return true;
- }
- return false;
- }
- /// <summary>
- /// 编辑实体
- /// </summary>
- /// <param name="errors"></param>
- /// <param name="model"></param>
- /// <returns></returns>
- public bool Edit(UserInfo model)
- {
- if (rep.Edit(model) > )
- {
- return true;
- }
- return false;
- }
- /// <summary>
- /// 根据id查找实体
- /// </summary>
- /// <param name="id"></param>
- /// <returns></returns>
- public UserInfo GetById(int id)
- {
- return rep.GetById(id);
- }
- /// <summary>
- /// 实体列表
- /// </summary>
- /// <param name="pager"></param>
- /// <param name="queryStr"></param>
- /// <returns></returns>
- public List<UserInfo> GetList()
- {
- IQueryable<UserInfo> queryData = rep.GetList(db);
- return queryData.ToList();
- }
- /// <summary>
- /// 判断是否存在实体
- /// </summary>
- /// <param name="id"></param>
- /// <returns></returns>
- public bool IsExist(int id)
- {
- return rep.IsExist(id);
- }
- }
- }
BLL层-UserInfoBLL
- @{
- Layout = null;
- }
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>用户中心</title>
- <meta name="renderer" content="webkit">
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
- <meta name="apple-mobile-web-app-status-bar-style" content="black">
- <meta name="apple-mobile-web-app-capable" content="yes">
- <meta name="format-detection" content="telephone=no">
- <link rel="stylesheet" href="~/Content/layui/css/layui.css" media="all" />
- <link rel="stylesheet" href="~/Content/css/public.css" media="all" />
- </head>
- <body class="childrenBody">
- <blockquote class="layui-elem-quote quoteBox">
- <form class="layui-form">
- <div class="layui-inline">
- <div class="layui-input-inline">
- <input type="text" class="layui-input searchVal" placeholder="请输入搜索的内容" />
- </div>
- <a class="layui-btn search_btn" data-type="reload">搜索</a>
- </div>
- <div class="layui-inline">
- <a class="layui-btn layui-btn-normal addNews_btn">添加用户</a>
- </div>
- <div class="layui-inline">
- <a class="layui-btn layui-btn-danger layui-btn-normal delAll_btn">批量删除</a>
- </div>
- </form>
- </blockquote>
- <table id="userList" lay-filter="userList"></table>
- <!--操作-->
- <script type="text/html" id="userListBar">
- <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
- <a class="layui-btn layui-btn-xs layui-btn-warm" lay-event="usable">已启用</a>
- <a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="del">删除</a>
- </script>
- <script type="text/javascript" src="~/Content/layui/layui.js"></script>
- <script type="text/javascript" src="~/Content/js/user/userList.js"></script>
- </body>
- </html>
Index.cshtml
我们往数据库插入几条记录这时你应该看到效果了
ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(7)- EF增删改查的更多相关文章
- ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(1)
文章转自:http://www.xuboyi.com/298.html 前言 网站运营有一段时间了,记录的内容都是杂七杂八的,思前想后,决定给大家分享一套ASP.Net的系列教程.手把手的做一套通用后 ...
- ASP.NET MVC5 + EF6 + LayUI实战教程,通用后台管理系统框架(3)
前言 本节将我们自己的CSS样式替换系统自带的 开始搭建 将脚本文件夹删掉,将内容文件夹里的内容删掉,将我们自己的CSS样式文件,全部复制到内容里边 新建家庭控制器 给家庭控制器添加索引视图 指数代码 ...
- ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(4)- 漂亮的登录界面
前言 这一讲,给大家添加登录页面 实现 添加Login的Index视图 @{ Layout = null; } <!DOCTYPE html> <html class="l ...
- ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(2)
前言 本节先给大家搭建UI部分,让大家能看到点东西,就好像所有编程书里,开始都是一个Hello World一样 开始搭建 首先建立空白解决方案,我们命名为BYCMS 然后添加新项目BYCMS 我习惯用 ...
- ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(6)- 创建数据库
前言 其实网站就是一座连接用户和数据库的梁桥,数据库通过网站,将信息以不同的方式,展现给客户,客户通过网站,对数据库进行各种操作 下面,我们用一个例子,给大家展示下基本的增删改查操作 创建数据库 创建 ...
- ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(5)- 创建项目结构
前言 关于理论知识,我的表达能力有限,知识水平有限,就不过多的讲解编程工作中的专用术语了,大家写的代码多了,自然就懂了 前几节课,我们看到了后台的主页面,以及一个自认为比较漂亮的登录界面,算是编程套路 ...
- (菜鸟要飞系列)三,基于Asp.Net MVC5的后台管理系统(用户的增删改查功能)
这些天被项目,考试整昏了头脑,没时间更新,我已经将这一部分全部做完了,现在把代码放上来,大家可以自己研究,有问题可以私聊,这里把图放上来 http://download.csdn.net/detail ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(5)-EF增删改查by糟糕的代码
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(5)-EF增删改查by糟糕的代码 上一讲我们创建了一系列的解决方案,我们通过一个例子来看看层与层之间的关系 ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...
随机推荐
- hdu 4961 数论?
http://acm.hdu.edu.cn/showproblem.php?pid=4961 给定ai数组; 构造bi, k=max(j | 0<j<i,a j%ai=0), bi=ak; ...
- js加减运算·传参
<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...
- ASP.NET Web API 框架研究 核心的消息处理管道
ASP.NET Web API 的核心框架是一个由一组HttpMessageHandler有序组成的双工消息处理管道:寄宿监听到请求接受后,把消息传入该管道经过所有HttpMessageHandler ...
- Python自动化开发 - 常用模块(二)
本节内容 1.shutil模块 2.shelve模块 3.xml处理模块 4.configparser模块 5.hashlib模块 6.subprocess模块 7.re模块 一.shutil模块 高 ...
- UNIGUI上传文件
UNIGUI上传文件 uniGUI提供了一个文件上传控件TUniFileUpload,进行数据的导入就变得比较容易.首先将TUniFileUpload控件放置在窗体上,按下导入按钮后,执行TUniFi ...
- mysql 幻象读
[sql] view plain copy CREATE TABLE `t100` ( `id` bigint(20) NOT NULL default '0', `value` varchar(32 ...
- 如何将Excel 图表导出
简单分三步: Step1: Alt+ F11 --> 调出 VBA: Step2: Ctrl+G (开关键)—>调出立即窗口: Step3: 在立即窗口输入 activesheet.C ...
- 实验4 IIC通讯与EEPROM接口
1. 用C语言编程,利用定时器产生一个0~99秒变化的秒表,并且显示在数码管上,每过一秒将这个变化写入实验板上AT24C02,当关闭实验板电源,并再次打开实验板电源时,单片机从AT24C0 ...
- 《基于MVC的JavaScript Web富应用开发》学习笔记
第1章 MVC和类 1. 什么是MVC? MVC是一种设计模式, 它将应用划分为3个部分: 数据(模型, Model), 展现层(视图, View) 和用户交互层(控制器, Controller). ...
- OCP 062考试题库2019年新出现的考题-17
choose one What is a pre-requisite to alter a role? A) You should set the OS_ROLES parameter to true ...