ASP.NET开发模式中的三层结构

开发 后端
本文向您介绍ASP.NET开发模式的三层结构,通过对模块和功能等的划分,可以避免代码可重用性低,可扩性差,日后的修改和维护麻烦等ASP.NET传统的技术缺陷。

ASP.NET已经出来了有好几年了,但是在开发模式上还是使用着传统的Form模式,没有成熟的开发模式的支持。这种技术的缺点是很明显的,代码可重用性低,可扩性差,日后的修改和维护麻烦。

为了开发的需要,我设计了一个ASP.NET开发模式,大家一起交流、探讨,设计得不好的地方还请各位不吝指出。

ASP.NET开发模式的三层结构的架构示例如下图:

ASP.NET开发模式的三层结构的架构

  1. using System;  
  2. using System.Text;  
  3. using System.Data;   
  4. namespace AccessHelper  
  5.    {      
  6.     public interface IHelper      
  7.          {          
  8.              DataTable ExecuteReader(string connectionString, CommandType cmdType, string cmdText);  
  9.              int ExecuteNoneQuery(string connectionString, CommandType cmdType, string cmdText);          
  10.              object ExecuteScalar(string connectionString, CommandType cmdType, string cmdText);          
  11.              void AddParameter(string key, object value);    }  
  12.  
  13.     } 

DbHelper模块IHelper接口的定义如下

IHelper用于直接执行SQL语句,它的三个主要的方法是根据Command对象的三个方法来划分的。其中ExecuteReader方法返回的是DataTable类型,使用DataAdapter把数据Fill到DataTable中。这样做的好处是尽早断开数据库的连接,释放资源。

DbDAO模块根据具体的Model类来定义,它的作用是把从DbHelper得来的DataTable转换成具体的类。DbDAO通过参数DataBaseType参数,使用DBHelperFactory工厂类实例化相应的IHelper类。

DbDAL模块用于处理各种的数据访问逻辑,如登录,注册等等。

这就是一个简单的ASP.NET设计模式,在这个模式基础上使用三层结构,可以利于项目的开发和代码维护等工作。

 

【编辑推荐】

  1. ASP.NET中使用AJAX中的方式
  2. ASP.NET中WCF服务与ASMX服务的兼容性
  3. 探索ASP.NET新技术 实现更便捷的Web开发
  4. ASP.NET中using的用法三则
  5. ASP.NET项目开发中健康监视浅析
责任编辑:佚名 来源: cnblogs
相关推荐

2009-07-30 13:07:49

ASP.NET中的三层

2009-07-28 17:25:14

ASP.NET三层结构

2009-07-28 15:08:50

MVC三层架构实例

2013-01-09 11:00:20

架构开发三层架构.NET架构

2009-04-30 09:15:25

三层结构MVC架构

2009-07-30 14:03:04

ASP.NET中的se

2009-07-30 13:45:40

ASP.NET开发模式MVC模式

2009-07-30 08:49:58

ASP.NET中usi

2009-07-30 13:57:39

ASP.NET水晶报表ASP.NET

2009-08-19 10:54:42

ASP.NET数据访问

2009-07-24 10:14:22

ASP.NET开发

2011-04-19 13:53:41

三层架构

2012-09-20 09:54:12

ASP.NETWebC

2009-07-20 12:59:53

ASP.NET MVCASP.NET框架的功

2009-08-05 17:54:04

ASP.NET运行模式

2009-07-22 18:08:00

ASP.NET基类

2010-03-26 09:16:44

2009-07-24 10:10:22

ASP.NET

2009-07-24 16:17:42

WebRequestEASP.NET

2012-10-08 14:01:54

ASP.NETWebC
点赞
收藏

51CTO技术栈公众号