Asp.net三层架构

      进公司以来学的第一个开发框架就是三层架构了.其实这个以前在学校里也学过,记得自学java的时候,为了做电子商务网站,看了许多关于MVC的开发模式,后来自己就做了一个jsp+servlet+javabea的MVC模式的电子商务网站.因此,这次学asp.net的三层架构觉得不是很难,很容易理解.所以后来自己又用asp.net的三层架构做了个个性化的电子商务网站.

         asp.net的三层架构其实很简单,就是表示层,业务逻辑层和数据访问层.其结构如图:
          我用一个小例子来说明下问题,我的开发环境是vs2005打了sp1的补丁,如果没打补丁可能不能创建asp.net web应用程序.

          1.首先创建一个空的解决方案.然后再往里面加新的项目.这样可以让源代码和解决方案在一个文件夹下面.

           2.然后再往里面加DataAccess数据访问层,Bussiness业务逻辑层和WebClient客户表现层.结构如图:

             
         3.DataAccess为数据访问层,主要就是连接数据库的,执行插入和查询等操作.在这里,我主要是用数据集访问的,这样的好处是代码可以自动生成不用我们自己来写,省了时间,精力,而且不用担心会错.数据库的操作都是用存储过程做的,而存储过程又是用一个叫CodeSmith的工具生成的,非常方便,省了很多的精力.

         4.Bussiness为业务逻辑层,主要是调用DataAccess层的方法然后返回结果给表示层的.如果你的业务逻辑比较多就可以再创建一层,那就实现多层架构了.

        5.WebClient表示层主要是获取表单的数据,然后调用Bussiness的方法处理数据,然后根据结果显示相应的数据了.
         最终运行的结果.

          三层架构的好处我就不说了,到网上查下有很多的. 我想说的是我这里的这里的分层并不明显,如果业务比较多可以将逻辑层多分基层,实现N层架构.

          我开始说的个性化的电子商务网站也是采用以上结构做的,其中实现了Ajax技术,功能和Google Suggest的功能差不多.关于asp.ent 的Ajax技术我会在另一篇文章里讲述.

          如果大家有什么好的开发框架可以推荐下,谢谢.

            点击这里可以下载本例子的源代码:/Files/ringwang/TestThree.rar
            也许不能正确运行,因为没有备份数据库,还有数据库的连接字要改.不过大家可以建一个数据库,有时间的话我做成Access的数据库大家以后就可以运行了.

 

版权声明:本文为ringwang原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ringwang/archive/2008/11/24/767394.html