ASP.NET MVC5+EF6+EasyUI 后台管理系统(60)-系统总结
系列目录
前言:
起初写这个框架的时候,可以说在当时来说并不是很流行的设计模式,那是在2012年,面向对象的编程大家都很熟悉, 但是“注入、控制反转(DI,IOC,依赖注入)、AOP切面编程”新兴名词
很多人并不知道特别是从事.NET开发的人,至少在当时 是这么样的,但是在今天它们却是非常流行的技术指标,很多大牛也承认,这是主流的开发模式,你们可以从招聘网的技术岗 位看出。
嘿嘿...
我从事过MVC2.0到5.0的相关开发工作,见证了MVC的成熟演变过程,就像本框架一样,设计模式未曾改变,但是代码一直在重 构。我也坚信这种开发模式目前无法被取代,也是我们Web开发工作的首选
MVCWebAPI适配移动设备接口,MVCWEB业务界面显示处理,这是多么的标配。
我为何选择这个技术组合?
我当初对技术的选型很是简单,从简单的开发方式和学习成本人员考虑,大家都认知的技术方式,可以克服开发过程中团队人 员的更换(离职,新人)
选择的技术都是从大流行架构精粹出来,并不使用非常大型的底层框架,培训学习成本极高,从学习到开发需要一个漫长的过程,这也是老板们不愿意看到的
同时也考虑到应用系统的使用负担并不是极大
So: Asp.net MVC、EF、IOC容器、EasyUI、分层分模块、基于接口
MVC:目前适用所有前端应用的部署,包括网站,系统后台,适配,API接口,没有像webform,php等一样的混合型臃肿代码,关注点分离
EF:微软件自己的东西,毕竟用起来非常顺手,更新很快,支持主流的数据库,易于扩展和变化,但是缺点我们都知道,大型访问量的系统并不适合
同时ORM显然也没有生的SQL语句来得更加直接,但是易用性和开发速度上毋庸置疑
注入:注入容器我在各大流行的IOC注入容器中选择了Unity,在当时综合来看,Unity在像流行的Autofac,Spring.NET等中,属于中规中矩的稳定型,直到今天
经过多年的版本演变,各大注入框架的性能稳定性,和易用性都差不多,所以无论选择那一款都好,我们实现的效果都是一样的,他们的原理也都是一样的
EasyUI:对于应用系统,我认为最重要的就是数据表格,处理和显示复杂的业务模式是必要的首选,EasyUI的组件应有尽有,我一度想换成Bootstrap,但是对于应用系统
BootStrap其实并不适合,特别是开发速度上和显示上,虽然更加轻量级,但是你最后会为交互挠破了你自己的头,不信你可以试试看。不过发布于互联网的界面可以使用
BootStrap,互不冲突,最后我还是看厌了EasyUI的皮肤,自己努力写了5套Easyui的皮肤,其实并不难。传送门
分层分模块:从数据库到文件的命名他们是有规范的,也是对系统的约定和编码规范,每一家公司对编码都有一定的规范,但是大同小一异,比如工作流模块,Flow在数据库表中是Flow_
为前缀,在MVC中的Areas下为Flow,BLL,DAL以,Flow.BLL,Flow.DAL。这都有利于开发人员的快速设别和T4的统一生成,也利于系统的拆分,同时我们的BLL,DAL也适用于
WinForm,WPF等桌面软件,或者做为WebAPI的业务层。
基于接口:规范、约束、分离等,通俗点来说我主要作为分包,业务代码隐藏,团队开发中只要定义好接口,而无需要实用业务,就能发包同时开发进行,非常好
如何阅读本系列的文章
理论上任何感兴趣的园友都可以了解和阅读,但是如果你具备一定的工作经验那么看起来事半功倍。
其中1-10节:是本系列的入门基础。基本就确定了从用户请求到读取数据库的全过程,主要讲解Easyui是如何读取后台数据,通过Json数据的交互方式,速度快无刷新,同样适用其他前段框架。如Extjs,jqgrid等等。
11,12,13节:是本系统的日志、异常处理方式,日志可以记录用户的每个动作,异常可以让开发人员快速得到问题定位。
18-28节:权限是每个应用系统最基本的东西,理论必须拥有。关键权限是控制程度,本系列把权限控制到按钮级别,通过全局过滤器来处理请求
--------------------中间为选读章节------------------
58,59节是本系列的重构章节,通过T4模板,封装了DAL,BLLMODEL'的重复代码,代码生成器的'BLL,DAL已经不再需要。大大省掉了很多重复代码,必须阅读。就算你的系统并不属于本系列的范围,但是58,59也许对你有帮助
后续将带来一些WebAPI的开放及验证,让WebAPI开放给移动端等文章,让我们知道安卓是如何与我们的API进行通讯及验证
写在最后
感谢大家一直以来的支持,正所谓赞得高尿得远!嘿嘿..
ASP.NET MVC5+EF6+EasyUI 后台管理系统(60)-系统总结的更多相关文章
- ASP.NET MVC5+EF6+EasyUI 后台管理系统--任务调度系统解析
1.任务主界面.任务可以被挂起,启动,和删除.来自著名Quartz扩展 2.任务可以是执行的SQL命令,存储过程,或者是一个后台方法 3.极其复杂的调度任务,循环次数,可以自行设置.并可以间隔执行,比 ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-前言与目录(持续更新中...)
开发工具:VS2015(2012以上)+SQL2008R2以上数据库 您可以有偿获取一份最新源码联系QQ:729994997 价格 666RMB 升级后界面效果如下: 任务调度系统界面 http: ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-前言与目录(转)
开发工具:VS2015(2012以上)+SQL2008R2以上数据库 您可以有偿获取一份最新源码联系QQ:729994997 价格 666RMB 升级后界面效果如下: 日程管理 http://ww ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(63)-Excel导入和导出-自定义表模导入
系列目录 前言 上一节使用了LinqToExcel和CloseXML对Excel表进行导入和导出的简单操作,大家可以跳转到上一节查看: ASP.NET MVC5+EF6+EasyUI 后台管理系统(6 ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统-WebApi的用法与调试
1:ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-WebApi与Unity注入 使用Unity是为了使用我们后台的BLL和DAL层 2:ASP.NET MVC5+EF6+Easy ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(51)-系统升级
系统很久没有更新内容了,期待已久的更新在今天发布了,最近花了2个月的时间每天一点点,从原有系统 MVC4+EF5+UNITY2.X+Quartz 2.0+easyui 1.3.4无缝接入 MVC5+E ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(56)-插件---单文件上传与easyui使用fancybox
系列目录 https://yunpan.cn/cZVeSJ33XSHKZ 访问密码 0fc2 今天整合lightbox插件Fancybox1.3.4,发现1.3.4版本太老了.而目前easyui 1 ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(58)-DAL层重构
系列目录 前言:这是对本文系统一次重要的革新,很久就想要重构数据访问层了,数据访问层重复代码太多.主要集中增删该查每个模块都有,所以本次是为封装相同接口方法 如果你想了解怎么重构普通的接口DAL层请查 ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(34)-文章发布系统①-简要分析
系列目录 最新比较闲,为了学习下Android的开发构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(1)-前言与,虽然有点没有目的的学习,但还是了解了Andro ...
随机推荐
- 最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目
最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目 最近一个来自重庆的客户找到走起君,客户的业务是做移动互联网支付,是微信支付收单渠道合作伙伴,数据库里存储的是支付流水和交易流水 ...
- C# Web应用调试开启外部访问
在用C#开发Web应用时有个痛点,就是本机用VS开启Web应用调试时外部机器无法访问此Web应用.这里将会介绍如何通过设置允许局域网和外网机器访问本机的Web应用. 目录 1. 设置内网访问 2. 设 ...
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- .Net Core MVC 网站开发(Ninesky) 2.4、添加栏目与异步方法
在2.3中完成依赖注入后,这次主要实现栏目的添加功能.按照前面思路栏目有三种类型,常规栏目即可以添加子栏目也可以选择是否添加内容,内容又可以分文章或其他类型,所以还要添加一个模块功能.这次主要实现栏目 ...
- 用php做注册审核
做注册审核就像前面讲的注册登录一样,也是要连接数据库 首先在数据库内要做这样一张表: 表名为users表 里面的列名分别为用户名,密码,姓名,性别,生日,账户的状态,照片 然后就可以写代码了,要注册的 ...
- 前端学HTTP之重定向和负载均衡
前面的话 HTTP并不是独自运行在网上的.很多协议都会在HTTP报文的传输过程中对其数据进行管理.HTTP只关心旅程的端点(发送者和接收者),但在包含有镜像服务器.Web代理和缓存的网络世界中,HTT ...
- C#中如何给Excel添加水印
我们知道Microsoft Excel并没有内置的功能直接给Excel表添加水印,但是其实我们可以用其他变通的方式来解决此问题,如通过添加页眉图片或艺术字的方法来模仿水印的外观.所以在这篇文章中,我将 ...
- Create a Team in RHEL7
SOLUTION VERIFIED September 13 2016 KB2620131 Environment Red Hat Enterprise Linux 7 NetworkManager ...
- eclipse如何添加Memory Analyzer
①启动Eclipse,并打开"Install New software..."对话框: ②点击Add,如图: ③点击OK,最后一直点next,完成
- Javascript中的valueOf与toString
基本上,javascript中所有数据类型都拥有valueOf和toString这两个方法,null除外.它们俩解决javascript值运算与显示的问题,本文将详细介绍,有需要的朋友可以参考下. t ...