前言:

有些园友经常问如何正确快速开发,但是我告诉你没有什么帮助文档比自己动手做更加实在,不用代码生成器

这一节专门抽了些时间来非常非常详细演示这个框架的数据流,废话不多说,现在开始!下面看一张图,看看数据如何到前端的就完全明白了!

只看红色部分,这是典型的三层模式。其实这张图只是对我们过去的一个回顾而已!DAL获取数据库数据,交给业务层处理逻辑后交付控制器序列化给前端

从用户请求(View)——>控制器(Controller)——>业务处理(BLL)——>(数据访问)DAL——最后得到数据

-------------------------------------------------------------------------丑陋的分割线----------------------------------------------------------------------------

目录

上面只是一个开篇,下面让我们来快速进入主题吧!大致分以下5步完成:(其实纯看手速,手速快的5分钟就可以运行了)

——————————————————————————

  1. 约定
  2. 建立类库与区域
  3. 相互引用
  4. 代码生成
  5. 运行

——————————————————————————

1.约定

其实在写完了权限的时候,我发现了很多重复性编码的东西,所以随便写了个代码生成器,在每次使用代码生成器的时候发现了,代码生成器生成的代码很多都是一样的,所以使用了T4重构了重复部分。

这都是在实际过程中去摸索完善的过程,没有任何架构师,一开始能对一个默生的项目提出最好的架构,只有不断的重构完善,最后才能使框架的维护成本降低!

假如我们是一个大型的应用系统,里面包含的很多业务模块,比如财务管理,人力资源,销售,生产,工作流,那么我是这样分的,也是一种约定

一个好的系统他们是可以被拆分和组合的,所以我这样分模块,一个子模块包含了BLL,DAL,IBLL,IDAL你也可以分文件夹,那都是一样的

以一个样例的模块来演示Sample(Spl),所以我们必须有如下的约定:

数据库表前缀: Spl_

类库的名称:    Apps.Spl.XXX

控制器区域:    Spl

Models文件夹:Spl

(虽然不是必须执行,但是这也是编码规范)

2.建立类库与区域

分别复制来源于Apps.Base下的所有T4到Apps.Spl对应的BLL,DAL,IDAL,IBLL层

并修改T4的内容的usingName前缀为Spl。(为数据表的约定的前缀)

类库:(如果你的项目是以文件夹而不是类库分类的那么不需要执行这一步)

区域:

并修改路由规则为如下(多语言的正则表达式)

 View Code

3.类库引用

(如果你的项目是以文件夹而不是类库分类的那么不需要执行这一步)

为了类库的引用,我们先建立两张表,只有表有了T4才能生成,生成后会报错,报错之后有助于我们对库的引用,OK

我这里建立两张表:表的数据来源于SQL2012的示例数据库AdventureWorks2012大家可以通过百度找到下载地址

表结构我是自己建的,比较简单,你可以随便建立你的表!

 提取数据的语句(如果感兴趣可以看看)
 建表语句(如果感兴趣可以看看)

这是一个产品与类别关系的表!没啥

根据报错信息我们将要分别引用类库,类库需要引用关系如下图所示

只看红色框框内即可,白色为系统原有的类库,别看好像很复杂,手速快的其实就一分钟的事情而已!

千万别忘记注入。在App.Core下的UnityDependencyResolver类库

4.代码生成

新建2个控制器。ProductController与ProductCategoryController

最后进入收尾工作,接下来的事情由代码生成器生成!生成代码后复制进Controller与View就可以

5.运行

运行系统,最后设置好权限和模块

最后刷新一下系统。杠杠的

总结

文章很长,但是很详细,看完对框架认知度至少提高200%。

主要几步来完成。新建类库---->数据库表---->生成代码---->直接运行。速度快的其实只需5分钟,毫无难度可言

几乎没有写一行代码就能实现界面的展示,如果把代码生成器努力优化将能支持多表联合查询,支持复合实际的开发业务,那么编码速度的提升是质的提升

谢谢大家。

下一节将演示如何添加除生成之外的功能!如何使用代码来做其它事

转载于:https://www.cnblogs.com/syg1/p/5551882.html

构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统(61)-如何使用框架来开发?...相关推荐

  1. 构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统(52)-美化EasyUI皮肤和图标

    构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统(52)-美化EasyUI皮肤和图标 系列目录 我很久以前就想更新系统的皮肤功能,Easyui 自带的 ...

  2. ASP.NET MVC5+EF6+EasyUI 后台管理系统(51)-系统升级

    系统很久没有更新内容了,期待已久的更新在今天发布了,最近花了2个月的时间每天一点点,从原有系统 MVC4+EF5+UNITY2.X+Quartz 2.0+easyui 1.3.4无缝接入 MVC5+E ...

  3. ASP.NET MVC5+EF6+EasyUI 后台管理系统-WebApi的用法与调试

    ASP.NET MVC5+EF6+EasyUI 后台管理系统-WebApi的用法与调试 1:ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-WebApi与Unity注入 使用Uni ...

  4. ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-前言与目录(持续更新中...)

    开发工具:VS2015(2012以上)+SQL2008R2以上数据库  您可以有偿获取一份最新源码联系QQ:729994997 价格 666RMB  升级后界面效果如下: 日程管理   http:// ...

  5. ASP.NET MVC5+EF6+EasyUI 后台管理系统

    ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-前言与目录(持续更新中...) 开发工具:VS2015(2012以上)+SQL2008R2以上数据库  您可以有偿获取一份最新源码联 ...

  6. ASP.NET MVC5+EF6+EasyUI 后台管理系统(2)-easyui构建前端页面框架[附源码]

    系列目录 前言 为了符合后面更新后的重构系统,本文于2016-10-31日修正一些截图,文字 我们有了一系列的解决方案,我们将动手搭建新系统吧. 后台系统没有多大的UI视觉,这次我们采用的是标准的左右 ...

  7. ASP.NET MVC5+EF6+EasyUI 后台管理系统(67)-MVC与ECharts

    系列目录 ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Fire ...

  8. ASP.NET MVC5+EF6+EasyUI 后台管理系统(28)-系统小结

    系列目录 我们从第一节搭建框架开始直到二十七节,权限管理已经告一段落,相信很多有跟上来的园友,已经搭配完成了,并能从模块创建授权分配和开发功能了 我没有发布所有源代码,但在14节发布了最后的一次源代码 ...

  9. ASP.NET MVC5+EF6+EasyUI 后台管理系统(4)-创建项目解决方案

    系列目录 前言 为了符合后面更新后的重构系统,文章于2016-11-1日重写 设计中术语,概念这种东西过于模糊,我们必须学习累积才能认识这些概念模型. 我无法用文章来下详细解析此系统的深层概念,需要大 ...

最新文章

  1. Linux使用iptables设置黑白名单
  2. 【iOS-Cocos2d游戏开发之二十】精灵的基础知识点总汇(位图操作/贴图更换/重排z轴等)以及利用CCSprite与CCLayerColor制作简单遮盖层!...
  3. 百度地图开发只显示网格不显示地图信息
  4. BytePS源码解析
  5. 射雕英雄传ol显示服务器断开,射雕英雄传OL6月18日维护更新内容
  6. python 埋点 库_vue 友盟统计埋点插件
  7. 数据库知识总结:sqlserver中事务总结:begin tran,rollback tran,commit tran +IndexDB总结...
  8. 如何把设计稿转换成html,将设计稿转换成WEB页面职业者
  9. HHUOJ 1895 果冻豆
  10. 弘辽科技:网店点击率低怎么办?点击率多少正常?
  11. ps导出内容快捷键 快速导出png
  12. iBeacon销声匿迹了吗?
  13. python去掉每行前面_第一个python去掉行号
  14. Arduino与Proteus仿真实例-74LS273触发器驱动仿真
  15. 新春贺礼:云和恩墨大讲堂期刊第二期
  16. 高智商翻木块java_高智商游戏翻木块
  17. 使用.Net5尝鲜的一些小总结及Configuration.Json读取配置文件的使用
  18. xposed绕过模拟器检测_反xposed检测下载|国外xposed反检测工具(project cerberus)下载v1.4.3 安卓版_ 2265安卓网...
  19. 软件开发项目中进行实际日程安排
  20. 论比价网小程序的可实施性(2020-9-11)

热门文章

  1. H5 小代码(实时更新)
  2. Python hashlib 无法打印
  3. Spring中获取Session的方法汇总
  4. 前端学PHP之面向对象系列第四篇——关键字
  5. 第二冲刺站立会议01
  6. [转]---UAP中如何判断当前APP在哪个平台设备上运行
  7. 阿里云 yum无法正常使用的解决办法 (转)
  8. 使用WebBrowser与msHtml开发WinForms下的HtmlEditor控件
  9. python弹幕代码_只需3 行代码就可以获取B站(弹幕、评论、用户)数据
  10. python教程5小时完整版_Python零基础入门教程5小时完整版(北京理工大2020年版)