从零开始写C# MVC框架之--- 项目结构
来源:互联网 发布:怎样遇事不慌,知乎 编辑:程序博客网 时间:2024/05/20 11:52
框架总分2个项目:Web开发项目、帮助类项目 (ZyCommon、Zy.Utilities)
1、ZyCommon,是Web开发项目结构。新建一个空解决方案,再建Data、Service、ZyWeb解决方案文件夹,把数据层、接口服务层、Web层区分开
1.1、Data解决方案下----Zy.Xn.Model 数据模型项目,设计好System下 组织机构、菜单、角色、角色菜单、角色用户、用户实体类,Models是系统使用的一些DTO基类,比如ztree控件需要的一些实体字段,角色菜单DTO,BaseModel是一个基类,存放一个Id自动增长的字段,供System下的多个实体引用
1.2 、Data解决方案下----Zy.Xn.Entity 实体项目,用来管理实体上下文的,添加Entity Framework的引用,添加 Zy.Xn.Model 的引用,把实体类放到上下文类中,在App.config配置好连接数据库,然后使用Code First创建表,以后每次更新数据库表字段,只需要更新Model项目中的实体类,使用Code First Migrations 命令更新即可,初始时需要 Enable-Migrations ,启用迁移后会在实体项目下生成 Migrations文件夹,存放每次迁移的记录,至此Data层的功能大致是如此的
命令:工具--NuGet包管理器--程序包管理器控制台--默认项目选择Zy.Xn.Entity 上下文项目
添加迁移报告:add-migration 20160911
更新到数据库:update-database
迁移至指定版本(包括后退):Update-Database –TargetMigration: $InitialDatabase
得到SQL脚本(部署到服务器时很有用) : Update-Database -Script -SourceMigration: 最开始版本号-TargetMigration: 结束版本号
1.3、Service解决方案下 ---- Zy.Xn.IServices 服务接口层,面向接口编程,好处多多
1.4、Service解决方案下 ---- Zy.Xn.Services 服务实现层
1.5、Web项目,新建Areas,多个项目只要在Areas下建多个项目即可,后台管理系统放在Admin文件夹下,系统所用的JS、CSS、Images等存放在Content文件夹下
2、Zy.Utilities 所有帮助类、依赖注入、基类控制器等再此项目下实现
2.1、Zy.Utility.Core项目提供所有的帮助类,如:异常类、日志类、IOHelper、ImageHelper,PageModel(列表基类) 等等系统可能用到的帮助类,日志类会专门开一篇文章讲解,如何在项目配置Log4日志,报错后怎么把错误信息写入日志
2.2、Zy.Utility.ServicesProvider项目是服务代理提供者,也就是 Autofac依赖注入的实现
2.3、Zy.Utility.WebFramework项目提供控制器基类、接口服务帮助类、Bundles帮助类(读取js、css配置节点)
2.3.1、控制器基类,重写异常捕获方法并把错误信息写入日志,获取当前登录用户,Session失效后重定向的控制器等功能,给Web项目使用
2.3.2、bundles在web项目中的实现,新建一个admin.bundles文件,使用它的好处是可以压缩js、css,减少网络流量,当然,也可以在项目中App_Start--BundleConfig中配置,不过没有自定义实现方便
- 从零开始写C# MVC框架之--- 项目结构
- 从零开始写C# MVC框架之--- 开篇
- 从零开始写C# MVC框架之--- 使用Areas分离ASP.NET MVC项目
- 从零开始写C# MVC框架之--- C# Redis 实现加添加测试项目
- 从零开始写C# MVC框架之--- 主框架页
- 从零开始写C# MVC框架之--- 配置log4日志
- 从零开始写C# MVC框架之--- 数据库表设计
- 从零开始写C# MVC框架之--- 服务接口与实现
- 从零开始写C# MVC框架之--- 用autofac ioc 容器实现依赖注入
- 从零开始写C# MVC框架之--- 定义基类控制器、实现全局异常捕获
- 从零开始写C# MVC框架之--- 设计用户、菜单、组织机构、角色等表
- 从零开始写C# MVC框架之--- 集成DataGrid、layer弹出层、ZTree
- 从零开始写C# MVC框架之--- 根据用户角色权限获取菜单
- MVC框架之从零开始(一)
- MVC框架之从零开始(二)
- [笔记]架构探险-从零开始写JavaWeb框架-1. 之搭建轻量级mvc框架
- 自己动手写javaweb mvc框架 之 项目准备
- 从零开始写javaweb框架笔记2-搭建web项目框架
- 基于SharedPreference的自动填写
- 霍夫圆变换
- 国产数据库增量备份测试-达梦数据库
- Java 中几个经典的打印图形
- nyoj61传纸条 双线传递
- 从零开始写C# MVC框架之--- 项目结构
- 基础知识
- 对RecycleView的多种item布局的封装
- Android 从StackTraceElement反观Log库
- read from and write to file
- matlab xcorr的用法
- POJ 1734 最小环
- 安卓图片压缩技术(质量压缩和比例压缩)
- 软件开发心得,于2016-9-11。