[转载]asp.net 2.0 三层架构创建步骤 添加引用具体步骤
2010-06-24 13:08
447 查看
http://hiphotos.baidu.com/xiajiok/pic/item/f91b1933a3de62eb1b4cff4d.jpg
需要更新一点的不是添加项目,而是”Add-- New Project"
三层架构分别是数据访问层 database access layer,业务逻辑层business logic layer,用户表现层(用户接口层) user interface layer.简称分别为DAL,BLL,UIL.
数据访问层主要是提供一些通用的对数据库进行操作的函数。业务逻辑层则调用这些函数完成某些功能,而用户表现层则又调用业务逻辑层的函数来使用这些功能。
说起来比较简单,但是到底是怎么个实现法?不要着急,给你举个小例子就明白了。
1,打开VS2005,建立一空白解决方案。注意是建立空白解决方案,而不是一个项目或者网站。建立方式是点击菜单栏的新建项目。项目类型选其他项目类型->Visual Studio解决方案。右边的模板选择空白解决方案,填写名称,选择位置,点击确定即可。
2,打开解决方案资源管理器,右键点击此解决方案名称新建->新建项目,项目类型为类库,使用语言选C#,命名为DAL.用同样的方法再新建一个项目命名为BLL,然后再新建一个ASP.NET网站,使用语言为c#,命名为 UIL.
3,添加项目BLL对项目DAL的引用。以及网站UIL对项目BLL的引用。方法是在资源管理器中右击项目名称,添加引用。在弹出的对话框中选中项目标签,选择适当的项目点击确定。
4,在项目DAL中添加一个新的类文件,名称为dataaccess.cs.然后在此类文件中写入那些访问数据库或者xml文件的通用的方法,以供BLL层的调用。我通常使用的是一个微软企业库的组件,调用了里面操作数据库的方法。
先举个简单的例子,假设下面这个函数是根据传来的查询语句,返回一个dataset对象。
/// <summary>
/// 执行查询,返回数据集
/// </summary>
/// <param name="connectionName">连接字符串名</param>
/// <param name="commandType">命令类型(存储过程或T-SQL查询语句)</param>
/// <param name="command">存储过程名或T-Sql查询语句</param>
/// <returns>数据集</returns>
public static DataSet ExecuteDataSet(QueryType commandType, string command)
{
SqlConnection mysqlconnection = new SqlConnection(myconnectionstring);
……
Mysqlconnection.close();
Return mydataset;
}
5,假设我们在用户表现层要实现一个功能,就是根据一个用户ID获取用户的详细信息。那么就要在业务逻辑层设计这个函数。
在BLL项目中添加一个新类TheUser.
其中部分代码为:
Public class TheUser
{
…
///<summary>
///根据用户Id返回用户详细信息
///</summary>
/// <param name="userid">用户ID</param>
/// <returns>数据集</returns>
Public static DataSet GetUserInfoById(string userid) //函数定义为静态函数可以不用声明新类而直接调用
{
String strSql = “select * from UserInfo where UserId = ” + userid;
Return DAL.DataAccess.ExecuteDataSet(commandType.Text,strSql); //调用数据访问层函数,DAL为其命名空间
}
…
}
6,在用户接口层来调用这个函数.
在UIL网站中建立一个页面,在其.cs文件中要调用的函数中加入如下代码:
…
String UserId = “001”;
DataSet dsUserInfo = BLL.TheUser.GetUeserInfoById(UserId); //调用业务逻辑层函数。BLL为命名空间
DataTabel dtUserInfo = dsUserInfo.Tables[0];
…
这就是三层结构大体的样子。它的好处是结构清楚,功能模块清晰,出现异常能迅速定位排除。这种模式开发出来的代码非常美观,简洁,别人阅读起来特别方便。
另 外告诉大家一个vs2005使用中的小技巧,目前还不知道的可以尝试下。当你写完一个函数要加注释的时候,在此函数名的上面一行打三个/(c#语言是三个 /,vb里是三个’)。然后你会发现程序自动出现了层次清晰的注释代码。你只需要在该加注释的地方补充你的注释即可。这样的注释看起来很漂亮,而且你以后 调用的时候能看到它的动态提示。
[align=left] 数据访问层:有时候也称为是持久层,其功能主要是负责数据库的访问。简单的说法就是实现对数据表的Select,Insert,Update, Delete的操作。如果要加入ORM的元素,那么就会包括对象和数据表之间的mapping,以及对象实体的持久化。在PetShop的数据访问层中, 并没有使用ORM,从而导致了代码量的增加,可以看作是整个设计实现中的一大败笔。[/align]
[align=left] 业务逻辑层:是整个系统的核心,它与这个系统的业务(领域)有关。以PetShop为例,业务逻辑层的相关设计,均和网上宠物店特有的逻辑相关,例如查询宠物,下订单,添加宠物到购物车等等。如果涉及到数据库的访问,则调用数据访问层。[/align]
[align=left] 表示层:是系统的UI部分,负责使用者与整个系统的交互。在这一层中,理想的状态是不应包括系统的业务逻辑。表示层中的逻辑代码,仅与界面元素有关。在PetShop中,是利用ASP.Net来设计的,因此包含了许多Web控件和相关逻辑。[/align]
需要更新一点的不是添加项目,而是”Add-- New Project"
三层架构分别是数据访问层 database access layer,业务逻辑层business logic layer,用户表现层(用户接口层) user interface layer.简称分别为DAL,BLL,UIL.
数据访问层主要是提供一些通用的对数据库进行操作的函数。业务逻辑层则调用这些函数完成某些功能,而用户表现层则又调用业务逻辑层的函数来使用这些功能。
说起来比较简单,但是到底是怎么个实现法?不要着急,给你举个小例子就明白了。
1,打开VS2005,建立一空白解决方案。注意是建立空白解决方案,而不是一个项目或者网站。建立方式是点击菜单栏的新建项目。项目类型选其他项目类型->Visual Studio解决方案。右边的模板选择空白解决方案,填写名称,选择位置,点击确定即可。
2,打开解决方案资源管理器,右键点击此解决方案名称新建->新建项目,项目类型为类库,使用语言选C#,命名为DAL.用同样的方法再新建一个项目命名为BLL,然后再新建一个ASP.NET网站,使用语言为c#,命名为 UIL.
3,添加项目BLL对项目DAL的引用。以及网站UIL对项目BLL的引用。方法是在资源管理器中右击项目名称,添加引用。在弹出的对话框中选中项目标签,选择适当的项目点击确定。
4,在项目DAL中添加一个新的类文件,名称为dataaccess.cs.然后在此类文件中写入那些访问数据库或者xml文件的通用的方法,以供BLL层的调用。我通常使用的是一个微软企业库的组件,调用了里面操作数据库的方法。
先举个简单的例子,假设下面这个函数是根据传来的查询语句,返回一个dataset对象。
/// <summary>
/// 执行查询,返回数据集
/// </summary>
/// <param name="connectionName">连接字符串名</param>
/// <param name="commandType">命令类型(存储过程或T-SQL查询语句)</param>
/// <param name="command">存储过程名或T-Sql查询语句</param>
/// <returns>数据集</returns>
public static DataSet ExecuteDataSet(QueryType commandType, string command)
{
SqlConnection mysqlconnection = new SqlConnection(myconnectionstring);
……
Mysqlconnection.close();
Return mydataset;
}
5,假设我们在用户表现层要实现一个功能,就是根据一个用户ID获取用户的详细信息。那么就要在业务逻辑层设计这个函数。
在BLL项目中添加一个新类TheUser.
其中部分代码为:
Public class TheUser
{
…
///<summary>
///根据用户Id返回用户详细信息
///</summary>
/// <param name="userid">用户ID</param>
/// <returns>数据集</returns>
Public static DataSet GetUserInfoById(string userid) //函数定义为静态函数可以不用声明新类而直接调用
{
String strSql = “select * from UserInfo where UserId = ” + userid;
Return DAL.DataAccess.ExecuteDataSet(commandType.Text,strSql); //调用数据访问层函数,DAL为其命名空间
}
…
}
6,在用户接口层来调用这个函数.
在UIL网站中建立一个页面,在其.cs文件中要调用的函数中加入如下代码:
…
String UserId = “001”;
DataSet dsUserInfo = BLL.TheUser.GetUeserInfoById(UserId); //调用业务逻辑层函数。BLL为命名空间
DataTabel dtUserInfo = dsUserInfo.Tables[0];
…
这就是三层结构大体的样子。它的好处是结构清楚,功能模块清晰,出现异常能迅速定位排除。这种模式开发出来的代码非常美观,简洁,别人阅读起来特别方便。
另 外告诉大家一个vs2005使用中的小技巧,目前还不知道的可以尝试下。当你写完一个函数要加注释的时候,在此函数名的上面一行打三个/(c#语言是三个 /,vb里是三个’)。然后你会发现程序自动出现了层次清晰的注释代码。你只需要在该加注释的地方补充你的注释即可。这样的注释看起来很漂亮,而且你以后 调用的时候能看到它的动态提示。
[align=left] 数据访问层:有时候也称为是持久层,其功能主要是负责数据库的访问。简单的说法就是实现对数据表的Select,Insert,Update, Delete的操作。如果要加入ORM的元素,那么就会包括对象和数据表之间的mapping,以及对象实体的持久化。在PetShop的数据访问层中, 并没有使用ORM,从而导致了代码量的增加,可以看作是整个设计实现中的一大败笔。[/align]
[align=left] 业务逻辑层:是整个系统的核心,它与这个系统的业务(领域)有关。以PetShop为例,业务逻辑层的相关设计,均和网上宠物店特有的逻辑相关,例如查询宠物,下订单,添加宠物到购物车等等。如果涉及到数据库的访问,则调用数据访问层。[/align]
[align=left] 表示层:是系统的UI部分,负责使用者与整个系统的交互。在这一层中,理想的状态是不应包括系统的业务逻辑。表示层中的逻辑代码,仅与界面元素有关。在PetShop中,是利用ASP.Net来设计的,因此包含了许多Web控件和相关逻辑。[/align]
相关文章推荐
- [转的]asp.net 2.0 三层架构创建步骤 添加引用具体步骤
- 转载:Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- 搭建连接MySql的三层架构的ASP.NetCore2.0的WebApi
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- asp.net mvc(模式)和三层架构(BLL、DAL、Model)的联系与区别 转载自:http://blog.csdn.net/luoyeyu1989/article/details/8275866
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用(转载)
- ASP.NET 2.0应用程序添加ASP.NET AJAX 组件引用之web.config配置
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- ASP.NET 2.0应用程序添加ASP.NET AJAX 组件引用之web.config配置
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- ASP.NET 2.0使用Web Part创建应用程序(转载--海东的技术资料)
- net2.0开发网站的三层架构的步骤
- [导入]Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- [转]微软代码示例:ASP.NET 2.0 三层架构应用程序教程系列
- asp.net 2.0 三层架构的实现(最最原始,简单,一般, 但不平凡)
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)