在上一节,咱们完成了一个项目搭建,咱们看到的是一个项目的分层架子,那接下来每一层作什么以及须要引用哪些内容呢?在本节内容咱们还逐步拆分每一层的功能,顺带添加package包bootstrap
在这一层,主要是定义领域模型,咱们前面也说,Domain是不依赖任何层的,惟一可能存在的依赖也就是外部的帮助类库了。因此这一层不须要咱们进行单独处理引用关系的。浏览器
在这一层咱们主要定义一些实体和实体的行为,为了解决方案树看着清爽一些,咱们分别添加几个文件夹保存对应的内容app
基本这些就够了。若是有须要咱们在单独添加,其实T4那个文件夹如今加不加均可以。编辑器
在这一层,咱们进行数据持久化操做,咱们将使用Entity Framework 6+Sql Server这个组合来进行数据持久化,同时咱们要实如今Domain层定义的仓储接口,还有就是在这一层还会使用Migration进行数据迁移,使用Fluent Api 来进行数据关系的配置,因此这一层的文件以下:性能
基本就这些文件夹。再看咱们在EF可能会用到的类库,测试
就这个就能够了,其余的不是必须的,咱们用的时候再添加就能够了。这里注意,nuget安装包EntityFramework有一个对应的EntityFramework.zh-Hans,一并安装上吧,这样在代码编写的时候就能够看到继承的中文提示了优化
最后,在EF层,咱们继承了Domain 的仓储接口,同时也会引用Domain的实体类,因此须要依赖Domain项目。右键添加项目引用便可插件
在这一层,咱们是为了隔离UI层与EF层之间的关联,数据模型流转以下Entity→Dto→Model,其中Entity→Dto的转换就是在这一层完成的。同时咱们还会把一些在页面模型中没有完成的模型组装在这里进行完。这一层文件夹以下:设计
其实,若是往三层上靠的话,应用层就有点相似原来的BLL层,干些没技术含量的活,可是咱们在这里非要搞出来一个接口和一个实现的方式,这个并非为了高大上,后续咱们会讲到Ioc的时候会用到,同时咱们在Domain中引入了T4,这块的不少代码都是能够生成的,因此不用纠结日志
看一下须要引用的Nuget包:
最后来到UI层,用户看到的那一坨屎同样的东西都集中在这里了。这一层要调用Application获取数据,进行展现,把用户提交的表单发送给Application而后到EF层进行持久化。
这一层文件夹在建立项目的时候已经基本都完备了,看一下这一层的引用,梳理一下咱们要用的技术
整理项目结构截图以下:
全部准备工做基本完毕。下一步就能够开始了。
比较纠结,我我的习惯是在整理需求的时候画原型,而后设计数据模型,基本就是页面设计→模型设计→逻辑处理→功能串联→测试微调的开发思路。
可是由于这个是从项目中提出来的,需求已经弄完了并且不少代码也完了,这个有点不知道从哪开始了。
整理整理思路在继续,并且第一次想写一个实战的文章,才发现好难啊~