用VS2005.NET进行三层结构应用程序的开发
1.三层之间的关系:
三层是指:界面显示层(UI),业务逻辑层(Business),数据操作层(Data Access)
文字描述:
Clients对UI进行操作,UI调用Business进行相应的运算和处理,Business通过Data Access对Data Base进行操作。
优点:
1、增加了代码的重用。Data Access可在多个项目中公用;Business可在同一项目的不同地方使用(如某个软件B/S和C/S部分可以共用一系列的Business组件)。
2、使得软件的分层更加明晰,便于开发和维护。美工人员可以很方便地设计UI设计,并在其中调用Business给出的接口,而程序开发人员则可以专注的进行代码的编写和功能的实现。
2.Data Access的具体实现:
DataAgent类型中变量和方法的说明:
private string m_strConnectionString; //连接字符串
private OleDbConnection m_objConnection; //数据库连接
public DataAgent(string strConnection) //构造方法,传入的参数为连接字符串
private void OpenDataBase() //打开数据库连接
private void #region CloseDataBase() //关闭数据库连接
public DataView GetDataView(string strSqlStat) //根据传入的连接字符串返回DataView
具体实现代码如下:
public class DataAgent
{
#region Variables
private string m_strConnectionString;
private OleDbConnection m_objConnection;
#endregion Variables
#region Functions
#region DataAgend
/// <summary>
/// Initial Function
/// </summary>
/// <param name="strConnection"></param>
public DataAgent(string strConnection)
{
this.m_strConnectionString = strConnection;
}
#endregion DataAgend
#region OpenDataBase
/// <summary>
/// function to open data base
/// </summary>
private void OpenDataBase()
{
try
{
this.m_objConnection = new OleDbConnection();
this.m_objConnection.ConnectionString = this.m_strConnectionString;
if(this.m_objConnection.State != ConnectionState.Open)
{
this.m_objConnection.Open();
}
}
catch(Exception e)
{
throw e;
}
}
#endregion OpenDataBase
#region CloseDataBase
/// <summary>
/// the function to cloase data base
/// </summary>
private void CloseDataBase()
{
if(this.m_objConnection != null)
{
if(this.m_objConnection.State == ConnectionState.Open)
{
this.m_objConnection.Close();
}
}
}
#endregion
#region GetDataView
/// <summary>
/// Execute the sql and return the default table view
/// </summary>
/// <param name="strSelectString">Select String</param>
/// <returns>DataView of the DataTable</returns>
public DataView GetDataView(string strSqlStat)
{
try
{
this.OpenDataBase();
OleDbDataAdapter objDataAdapter = new OleDbDataAdapter(strSqlStat.Trim(),this.m_objConnection);
DataSet objDataSet = new DataSet();
objDataAdapter.Fill(objDataSet);
return objDataSet.Tables[0].DefaultView;
}
catch(Exception e)
{
throw e;
}
finally
{
this.CloseDataBase();
}
}
#endregion GetDataTable
#endregion Functions
}
3.Business的具体实现:
建立名为Base的类,此类作为其他事务类的基类,其中定义了一个DataAgent的实例。其他所有的Business类都从该改类派生。
在该类中添加对DataAgent的引用,使所有的事务类都能使用DataAgent中的方法。
Base.cs源代码:
public abstract class Base
{
#region DataAgent
private DataAgent m_objDBAgent;
protected DataAgent OleDBAgent
{
get
{
if(this.m_objDBAgent == null)
{
this.m_objDBAgent = this.CreateAgent();
}
return this.m_objDBAgent;
}
set
{
this.m_objDBAgent = value;
}
}
#endregion DataAgent
public Base()
{
}
#region CreateAgent
/// <summary>
/// Create a new DataAgent
/// </summary>
/// <returns>the DataAgent</returns>
private DataAgent CreateAgent()
{
string strConnection = ConfigurationSettings.AppSettings["ConnectionString"];
return new DataAgent(strConnection);
}
#endregion CreateAgent
}
准备好了数据操作层和事务层的基类,底下就可以正式地开始业务逻辑类的开发了,如有一个显示新闻的类News,其中包含了一个GetNewsLsit()的方法,该方法用来获取所有的新闻标题列表,代码如下:
public class News: Base
{
public News Contact()
{
}
public DataView GetNewsList()
{
string strSql;
strSql = "";
strSql += " SELECT Top 10 NewsId,NewsTitle ";
strSql += " FROM Tb_News";
border-right: medium none; padding-right: 0cm; border-top: medium none; padding-left: 0cm; background: #d9d9d9; padding-bottom: 0cm; margin: 0cm 0cm 0pt; border-left: medium none;
分享到:
相关推荐
### 使用VS2005.NET进行三层架构应用程序的开发 #### 一、三层架构概述 在软件工程领域,三层架构是一种常见的设计模式,它将应用程序分为三个独立的层次:界面显示层(UI)、业务逻辑层(Business)以及数据访问...
### 用ASP.NET开发三层结构应用程序 #### 一、三层架构概述 三层架构是一种常见的软件设计模式,它将应用程序划分为三个独立的部分:表示层、业务逻辑层和数据访问层。这种架构的主要目的是提高系统的可维护性、可...
在本资源“用ASP.NET开发三层结构应用程序.rar”中,重点讲述了如何使用ASP.NET来设计和实现一个遵循三层架构的Web应用。三层架构是一种常见的软件设计模式,它将应用程序分解为三个独立的层:表示层、业务逻辑层和...
三层架构是一种常见的软件设计模式,尤其在Windows桌面应用程序开发中,如WinForm程序,它将应用程序的业务逻辑、数据访问和用户界面分离,以提高代码的可维护性、可扩展性和可重用性。本项目是基于DotNetBar控件库...
【三层架构典范项目-图书管理系统】是一个基于Winform应用程序的示例,展示了如何在IT行业中构建高效、可维护且分层的软件系统。这个系统利用了三层架构的设计原则,将业务逻辑、数据访问以及用户界面这三个核心部分...
MVC三层架构是现代软件开发中常用的模式之一,尤其是在Web应用程序的开发过程中。该模式通过将应用程序分为三个主要部分——模型(Model)、视图(View)和控制器(Controller),来提高代码的可维护性、可扩展性和复用性...
三层架构是从整个业务应用角度对程序的划分,包括表现层、业务逻辑层和数据访问层。 表现层 表现层是用户看到的界面,作用是接收用户提交的请求数据,反馈程序的响应数据给用户。其目的是提供可交互的操作界面。 ...
.NET开发三层架构应用程序视频 DAL层视频
在进行NHibernate三层结构应用程序开发前,首先需要设计好数据库结构。这里以一张用户表为例: ```sql CREATE TABLE Users ( LogonID varchar(20) PRIMARY KEY, Name varchar(40), Password varchar(20), Email...
在.NET框架下开发三层结构数据库应用系统是一种常见的软件设计模式,尤其在企业级应用中广泛使用。三层架构的主要目的是为了实现代码的解耦合,提高系统的可维护性、可扩展性和安全性。 首先,三层结构主要由三个...
在软件开发领域,三层架构是一种常见的设计模式,它将应用程序分为三个主要部分:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。这种架构有助于实现代码的...
在IT行业中,三层架构是一种常见的软件设计模式,它将应用程序分为三个主要部分:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。这种架构方式有助于提高...
ASP.NET三层架构步骤讲解 前言: 与ASP相比ASP.NET在Web应用开发上无疑更容易,更有效率。Web开发大部分还是围绕着数据操作,建立数据库存储数据,编写代码访问和修改数据,设计界面采集和呈现数据。走过Asp.net...
在本文中,我们将深入探讨如何在Visual Studio 2010 (VS2010) 使用C#开发Windows Forms (WinForm) 应用程序,并采用三层架构与NHibernate ORM框架进行数据库交互。三层架构是一种常见的软件设计模式,它将应用程序...
CS 架构应用程序开发 CS 架构是一种典型的两层架构,全称为 Client/Server 架构,即客户端服务器端架构。该架构中,客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,...
三层架构是一种常见的软件设计模式,尤其在企业级应用开发中广泛应用。它将应用程序分为三个主要层次:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer),以此...
在.NET框架下,开发三层结构数据库应用系统是一种常见的软件架构模式,它将应用程序分为三个主要层次:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。...
在Java服务程序开发中,构建三层数据库应用程序是一种常见的架构模式,用于实现复杂的企业级应用。这种模式将应用程序分为三个主要部分:表示层(浏览器)、业务逻辑层(服务程序中间件)和数据存储层(数据库服务...
PB11(PowerBuilder 11)是一款由Sybase公司推出的可视化编程工具,主要用于开发企业级的数据库应用程序。它以其强大的数据窗口功能和易用性而著名。在本例程中,我们将深入探讨如何利用PB11结合Web服务(Webservice...