项目目录

     1.项目架构: http://www.cnblogs.com/liuxiaoji/p/3922506.html

     2.仓储基础接口: http://www.cnblogs.com/liuxiaoji/p/4997049.html

    3.工作单元: http://www.cnblogs.com/liuxiaoji/p/4997054.html

    4.仓储基类:http://www.cnblogs.com/liuxiaoji/p/4997107.html

    5.(Common-Code)额外篇:http://www.cnblogs.com/liuxiaoji/p/4997111.html

    6.(邮件发送组件)额外篇:http://www.cnblogs.com/liuxiaoji/p/4997123.html

    7.仓储接口:http://www.cnblogs.com/liuxiaoji/p/4997129.html

    8.Model:http://www.cnblogs.com/liuxiaoji/p/4997148.html

    9.数据抽象工厂:http://www.cnblogs.com/liuxiaoji/p/4997142.html

    10.领域业务逻辑:http://www.cnblogs.com/liuxiaoji/p/4997150.html

    11.UI逻辑:http://www.cnblogs.com/liuxiaoji/p/4997162.html

1.项目结构 

     01 DbCommon: 数据公用层(相当于Dbhelper) 不同于Dbhelper的此层多加了一种工作单元的模式

      Notify.Infrastructure :数据公用层的接口

       Notify.DbCommon :数据公共层实现

    02 Common:代码公用层 

      Notify.Code:通用代码整合(例如:序列化,加密,自定义异常,压缩,解压 等等公用代码)

        Notify.Mail:邮件发送组建

      Notify.Model:所有的Model (包括数据库实体Model,实体传输Modle:即与UI交互的数据Model)

    03 Factory:底层工厂(抽象工厂设计:即根据配置文件反射出使用mysql或者sqlserver)

      Notify.IDbFactory :工厂接口

      Notify.MysqlDbFactory: mysql实现

          Notify.SqlServerDbFactory:sqlserver实现

    04 Service (服务层)

      Notify.Domain:领域层(相当于BLL层)

      Notify.IRepository:数据层层接口

      Notify.Repository:仓储层(相当于DAL层)  

      Notify.Service:基础服务层(所有UI层都调用改层,注:主要是组织业务逻辑,不在此层编写业务逻辑)

    05 WEB(UI层)

       Notify.Controller.Account: 用户Controller

      Notify.Controller.Base: 基础Controller(相当于WebForm的BasePage)

      Notify.Controller.Permission:权限Controller

      Notify.WEB:UI页面

    06 Test(测试)

      Test:单元测试项目

  附项目截图:

              

2.项目准备和技术工作

        (1)我大致介绍一下我们项目中将要用到的软件和一些技术。

    (2):开发工具:Visual Studio 2015 注:该项目必须用vs2015以及更高版本打开 因为代码里面用到C#6.0新语法

    (3):数据库:SQL Server(2008-2014) Mysql5.5 该项目主要通过mysql 完整的实现了 sqlserver暂未实现完有兴趣的同学可以去实现

    (4):代码管理工具:SVN 该项目我已经上传code.taobao,大家可以去http://code.taobao.org/这个网站注册一个帐号即svn凭证帐号 然后通过svn迁入代码 代码下载地址:http://code.taobao.org/svn/Notify/(用svn迁出即可)

    (5):ASP.NET MVC4.0

    (6):UI框架: EasyUI,Jquery ,zTree

    (7):ADO.NET框架的使用。

    (8):面向对象设计: http://www.cnblogs.com/liuxiaoji/p/4689119.html

    (9):代码整洁: 代码命名,格式等等规范 http://www.cnblogs.com/liuxiaoji/p/4599313.html

    (10):如果大家有什么好的建议的话也可以说一下。

    3.数据库设计(powerdesigner) 

下篇--仓储基础接口

EsayUI + MVC + ADO.NET(项目架构)的更多相关文章

  1. EsayUI + MVC + ADO.NET(仓储基础接口)

      1.RepositoryFramework(仓储接口:无外乎就是CRUD) 1.IAddRepository(添加接口) using System; namespace Notify.Infras ...

  2. EsayUI + MVC + ADO.NET(工作单元)

    关联的设计 关联本身不是一个模式,但它在领域建模的过程中非常重要,所以需要在探讨各种模式之前,先讨论一下对象之间的关联该如何设计.我觉得对象的关联的设计可以遵循如下的一些原则: 关联尽量少,对象之间的 ...

  3. EsayUI + MVC + ADO.NET(仓储基类)

      该篇主要讲解工作单元的运用 和DbHlper抽象封装 工作单元仓储基类:BaseRepository (DbHlper抽象封装)  仓储接口(CRUD):IRepository (CRUD接口) ...

  4. .Net Core MVC 网站开发(Ninesky) 2.3、项目架构调整-控制反转和依赖注入的使用

    再次调整项目架构是因为和群友dezhou的一次聊天,我原来的想法是项目尽量做简单点别搞太复杂了,仅使用了DbContext的注入,其他的也没有写接口耦合度很高.和dezhou聊过之后我仔细考虑了一下, ...

  5. Mvc项目架构分享之项目扩展

    Mvc项目架构分享之项目扩展 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 5.项目 ...

  6. mvc项目架构搭建之UI层的搭建

    项目架构搭建之UI层的搭建 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 5.项目创 ...

  7. mvc项目架构分享系列之架构搭建之Infrastructure

    项目架构搭建之Infrastructure的搭建 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...

  8. mvc项目架构分享系列之架构搭建初步

    mvc项目架构分享系列之架构搭建初步 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 ...

  9. Asp.net mvc项目架构分享系列之架构概览

    Asp.net mvc项目架构分享系列之架构概览 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...

随机推荐

  1. MySQL底层索引剖析

    1:Mysql索引是什么 mysql索引: 是一种帮助mysql高效的获取数据的数据结构,这些数据结构以某种方式引用数据,这种结构就是索引.可简单理解为排好序的快速查找数据结构.如果要查“mysql” ...

  2. 怎样从外网访问内网Jetty?

    本地安装了一个Jetty,只能在局域网内访问,怎样从外网也能访问到本地的Jetty呢?本文将介绍具体的实现步骤. 准备工作 安装并启动Jetty 默认安装的Jetty端口是8080. 实现步骤 下载并 ...

  3. ACM总结——2017湖南省省赛总结

    2017省赛已经结束了2天了,今天终于有时间,也有勇气来写下这一篇总结.的确,这是我第一次正式的ACM线下赛,我本以为再不济,也可以拿个三等奖,没想到,实力打铁.确实对我打击比较大,以前的确是知道自己 ...

  4. Docker学习笔记之Docker应用于服务化开发

    0x00 概述 上一节里我们谈到了小型的独立项目如何使用 Docker Compose 来搭建程序的运行环境,对于由多人或多部门参与的中大型服务化架构的项目,仅由一个 Docker Compose 项 ...

  5. v-bind属性的绑定

    v-bind:属性绑定: 当我们并没有使用v-bind使用的时候,突破不能显示出来,会提示错误,提示我们使用v-bind: 当我们使用v-bind时图片就可以显示: v-bind的简写是冒号: 使用v ...

  6. P4316 绿豆蛙的归宿(期望)

    P4316 绿豆蛙的归宿 因为非要用bfs所以稍微麻烦一点qwq(大家用的都是dfs) 其实问题让我们求的就是经过每条边的概率*边权之和 我们可以用bfs把图遍历一遍处理概率,顺便把每条边的概率*边权 ...

  7. CSM与UEFI

    最近公司产品部购置一批新电脑,但是预装的win10不能保证兼容老平台软件,于是安装win7系统的任务就落到了我的手中. 观察参数,是8代的U,产品说运维说无能为力,装不了win7.我在网上搜了一下,是 ...

  8. 《2015 html5 iweb 峰会观会后感》

    今天是2015  html5 iweb 峰会,大会在早上8:30,就开始了,没想到被坑了,看错一个字,把"国际会议中心",看成了"国家会议中心".大约过了10多 ...

  9. daemon进程fork一次和fork两次的区别?

    守护进程也称为精灵进程(Daemon),是运行在后台的一种特殊的进程.它独立于控制终端并且周期性的执行某种任务负等待处理某些发生的事件.因为他们没有控制终端,所以说他们是在后台运行的. 守护进程的特点 ...

  10. java.util.concurrent.RejectedExecutionException: event executor terminated解决方法之一

    INFO | jvm 1 | 2017/03/09 19:45:10 | java.util.concurrent.RejectedExecutionException: event executor ...