面向接口开发的一个架构(一)
最近要做一个CMS系统,系统有多个子系统,牵扯到Java、c#、SQLServer、Oracle结构比较复杂。
C#这块既要访问Oracle,又要访问SQLServer,所以做了一个面向接口的统一架构。
整个过程并不是面向对象的开发,没有建立实体类,使用DataSet作为数据存储的容器。业务逻辑层采用反射机制调用数据访问层,减少冗余代码。
分层结构为:
IBusinessFacade :定义业务逻辑层的接口
BusinessLogic : 实现业务逻辑
IDAL :定义数据访问层接口
DataAccess : 实现数据访问
Utility :一些工具类或者通用的类
Web : 基于ASP.NET的展现层
下面以Log日志为例,展现整个架构的层次结构,分数据访问、业务逻辑、页面展现三部分叙述。
Log的数据库结构如下:
ID int primarykey
Name varchar(1024)
Decribe varchar(4000)
CreateDate datetime
由于每层代码比较多就分开章节写了。