从零开始,搭建博客系统MVC5+EF6搭建框架(1),EF Code frist、实现泛型数据仓储以及业务逻辑
2016-09-22 18:45
1031 查看
前言
从上篇30岁找份程序员的工作(伪程序员的独白),文章开始,我说过我要用我自学的技术,来搭建一个博客系统,也希望大家给点意见,另外我很感谢博客园的各位朋友们,对我那篇算是自我阶段总结文章的评论,在里面能看出有很多种声音,有支持的我的朋友给我加油打气,有分享自己工作经历的朋友,有提出忠肯意见的朋友,有对记事本写代码吐槽的朋友,也有希望让我换个行业的,觉得我可能不适合这个行业朋友,不管怎样,我都接受,都是大家同行的一些忠告,谢谢大家。
首先我要在这里感谢很多博客园里面的大牛,写了很多系列,很多学习资料,让我受益很多,有机会找个时间,我会把我浏览器中收藏的资源都整理出来,分享给大家,其实我会的这些都是自己在博客园看到的文章、在某宝买的视频、QQ群里看群主的分享公开课学的,希望大家多提宝贵意见。
一、框架搭建
View Code
到目前为止数据库、仓储层、业务逻辑层的父类和父接口都实现了,下一篇博文就在UI层怎么调用,测试看,成功写成功没。
谢谢大家的支持,多提宝贵意见。
从上篇30岁找份程序员的工作(伪程序员的独白),文章开始,我说过我要用我自学的技术,来搭建一个博客系统,也希望大家给点意见,另外我很感谢博客园的各位朋友们,对我那篇算是自我阶段总结文章的评论,在里面能看出有很多种声音,有支持的我的朋友给我加油打气,有分享自己工作经历的朋友,有提出忠肯意见的朋友,有对记事本写代码吐槽的朋友,也有希望让我换个行业的,觉得我可能不适合这个行业朋友,不管怎样,我都接受,都是大家同行的一些忠告,谢谢大家。
首先我要在这里感谢很多博客园里面的大牛,写了很多系列,很多学习资料,让我受益很多,有机会找个时间,我会把我浏览器中收藏的资源都整理出来,分享给大家,其实我会的这些都是自己在博客园看到的文章、在某宝买的视频、QQ群里看群主的分享公开课学的,希望大家多提宝贵意见。
一、框架搭建
namespace Wchl.WMBlog.Services.Base { public class BaseServices<TEntity>: IBaseServices<TEntity> where TEntity:class { public IBaseRepository<TEntity> baseDal = new BaseRepository<TEntity>(); #region 查询 /// <summary> /// 单表查询 /// </summary> /// <param name="predicate"></param> /// <returns></returns> public List<TEntity> QueryWhere(Expression<Func<TEntity, bool>> predicate) { return baseDal.QueryWhere(predicate); } /// <summary> /// 多表关联查询 /// </summary> /// <param name="predicate"></param> /// <param name="tableNames"></param> /// <returns></returns> public List<TEntity> QueryJoin(Expression<Func<TEntity, bool>> predicate, string[] tableNames) { return baseDal.QueryJoin(predicate, tableNames); } /// <summary> /// 升序查询还是降序查询 /// </summary> /// <typeparam name="TKey"></typeparam> /// <param name="predicate"></param> /// <param name="keySelector"></param> /// <param name="IsQueryOrderBy"></param> /// <returns></returns> public List<TEntity> QueryOrderBy<TKey>(Expression<Func<TEntity, bool>> predicate, Expression<Func<TEntity, TKey>> keySelector, bool IsQueryOrderBy) { return baseDal.QueryOrderBy(predicate, keySelector, IsQueryOrderBy); } /// <summary> /// 升序分页查询还是降序分页 /// </summary> /// <typeparam name="TKey"></typeparam> /// <param name="pageIndex">第几页</param> /// <param name="pagesize">一页多少条</param> /// <param name="rowcount">返回共多少条</param> /// <param name="predicate">查询条件</param> /// <param name="keySelector">排序字段</param> /// <param name="IsQueryOrderBy">true为升序 false为降序</param> /// <returns></returns> public List<TEntity> QueryByPage<TKey>(int pageIndex, int pagesize, out int rowcount, Expression<Func<TEntity, bool>> predicate, Expression<Func<TEntity, TKey>> keySelector, bool IsQueryOrderBy) { return baseDal.QueryByPage(pageIndex, pagesize,out rowcount, predicate, keySelector, IsQueryOrderBy); } #endregion #region 编辑 /// <summary> /// 通过传入的model加需要修改的字段来更改数据 /// </summary> /// <param name="model"></param> /// <param name="propertys"></param> public void Edit(TEntity model, string[] propertys) { baseDal.Edit(model, propertys); } /// <summary> /// 直接查询之后再修改 /// </summary> /// <param name="model"></param> public void Edit(TEntity model) { baseDal.Edit(model); } #endregion #region 删除 public void Delete(TEntity model, bool isadded) { baseDal.Delete(model, isadded); } #endregion #region 新增 public void Add(TEntity model) { baseDal.Add(model); } #endregion #region 统一提交 public int SaverChanges() { return baseDal.SaverChanges(); } #endregion #region 调用存储过程返回一个指定的TResult public List<TResult> RunProc<TResult>(string sql, params object[] pamrs) { return baseDal.RunProc<TResult>(sql, pamrs); } #endregion } }
View Code
到目前为止数据库、仓储层、业务逻辑层的父类和父接口都实现了,下一篇博文就在UI层怎么调用,测试看,成功写成功没。
谢谢大家的支持,多提宝贵意见。
相关文章推荐
- 从零开始,搭建博客系统MVC5+EF6搭建框架(1),EF Code frist、实现泛型数据仓储以及业务逻辑
- 【干货】利用MVC5+EF6搭建博客系统(一)EF Code frist、实现泛型数据仓储以及业务逻辑
- 从零开始,搭建博客系统MVC5+EF6搭建框架(4)上,前后台页面布局页面实现,介绍使用的UI框架以及JS组件
- 从零开始,搭建博客系统MVC5+EF6搭建框架(4)上,前后台页面布局页面实现,介绍使用的UI框架以及JS组件
- 从零开始,搭建博客系统MVC5+EF6搭建框架(2),测试添加数据、集成Autofac依赖注入
- 从零开始,搭建博客系统MVC5+EF6搭建框架(2),测试添加数据、集成Autofac依赖注入
- 从零开始,搭建博客系统MVC5+EF6搭建框架(3),添加Nlog日志、缓存机制(MemoryCache、RedisCache)、创建控制器父类BaseController
- 从零开始,搭建博客系统MVC5+EF6搭建框架(3),添加Nlog日志、缓存机制(MemoryCache、RedisCache)、创建控制器父类BaseController
- 从零开始,搭建博客系统MVC5+EF6搭建框架(5),博客详情页、留言、轮播图管理、右侧统计博文
- 【干货】利用MVC5+EF6搭建博客系统(四)(上)前后台页面布局页面实现,介绍使用的UI框架以及JS组件
- SSH开发框架中,实现系统启动加载类,读取数据库常用数据进入内存以及将数据放在application
- MVC5+EF6+BootStrap3.3.5 博客系统之项目搭建(一)
- webapi框架搭建-数据访问ef code first
- 使用EF6和MVC5实现一个简单的选课系统--使用EF6读取相关数据(7/12)
- 使用.net core ABP和Angular模板构建博客管理系统(实现自己的业务逻辑)
- 使用EF6和MVC5实现一个简单的选课系统--使用EF6更新相关数据(8/12)
- 家庭财务管理系统实战2-easyui界面主框架搭建以及Accordion手风琴菜单实现
- EF CodeFirst模式下,模型和业务逻辑处在不同项目的自动数据迁移实现
- linq to ef 通过泛型 操作数据库,分离数据操作与业务逻辑
- MVC5+EF6+BootStrap3.3.5 博客系统之EF(一)