.NET完全手动搭建三层B/S架构
简介:三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(WebUI)、业务逻辑层(BusinessLogicLayer)、数据访问层(DataAccessLayer),公共层(ModelLayer)。区分层次的目的即为了“高内聚,低耦合”的思想。
一、应用三层架构的优点
三层结构适合群体开发,每人可以有不同的分工,协同工作使效率倍增;各做各的模块,降低开发人员能力要求;方便系统功能的扩展以及后期的维护工作;最大优点是它的安全性。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。可以更好的支持分布式计算环境。逻辑层的应用程序可以有多个机器上运行,充分利用网络的计算功能。分布式计算的潜力巨大,远比升级CPU有效。
二、手动搭建三层架构
软件 VS 2008
(当然可以用动软.Net代码生成器等自动生成三层架构)
1.建立空白的解决方案
法1) 文件/新建/项目弹出对话框 选择“其他项目类型”下面的“Visual Studio 解决方案” 单击“空白解决方案” 名称:ling 位置:D/ 确定 完成空白方案搭建
法2) Shift+Ctrl+N 弹出对话框 选择“其他项目类型”下面的“Visual Studio 解决方案”
2.建立三个类库
1) 在解决方案资源管理器中,右击“解决方案ling”选择“ 添加”下面的“新建项目”
2) 在弹出对话框中选择“Visual C#”里面的“类库”
名称:ModelLayer(简写Model) 公共层 位置:D:/ling “确定” 完成一个类库的添加
用相同的方法建立以下两个类库:
名称:DataAccessLayer(简写DAL) 数据访问层 位置:D:/ling
名称:BusinessLogicLayer(简写BLL) 业务逻辑层 位置:D:/ling
3.建立表现层
在解决方案资源管理器中,右击“解决方案ling”选择“ 添加”下面的“新建网站”
在弹出对话框中选择“Asp.NET 网站” 位置:文件系统, D/ling/WebUI
语言:Visual C#(这里值得注意网站的路径为:D/ling/WebUI)
“确定” 完成表现层的搭建
这样我们就完成了基本结构的搭建
4.添加各层之间的引用
4.1 数据访问层(DataAccessLayer)对公共层(ModelLayer)引用
1) 在解决方案资源管理器中,右击“DataAccessLayer”选择“ 添加应用”
2) 弹出“添加引用”对话框,单击“项目” 选择“ModelLayer”
单击“确定” 完成对公共层的引用
4.2 业务逻辑层(BusinessLogicLayer)对DataAccessLayer和ModelLayer引用
1) 在解决方案资源管理器中,右击“BusinessLogicLayer”选择“ 添加应用”
2) 弹出“添加引用”对话框,单击“项目” 选择“DataAccessLayer、ModelLayer”
单击“确定” 完成对DataAccessLayer和ModelLayer引用
4.3 表现层(WebUI)对BusinessLogicLayer、DataAccessLayer、ModelLayer引用
1) 在解决方案资源管理器中,右击“D/ling/WebUI/”选择“ 添加应用”
2) 弹出“添加引用”对话框,单击“项目”选择“DataAccessLayer、ModelLayer、BusinessLogicLayer”
单击“确定” 完成对DataAccessLayer、ModelLayer、BusinessLogicLayer引用
这样我们的项目是不能运行的,不信自己试试。
5.设置起始项目以及起始页
1) 在解决方案资源管理器中,右击“D/ling/WebUI/”单击“ 设为启动项目(A)”
2) 在解决方案资源管理器中,单击“D/ling/WebUI/”里面的“Default.aspx”(默认的,可改名)右击“ 设为启始页(P)”
3) 在解决方案资源管理器中,右击“解决方案ling”单击“重新生成解决方案(R)”
OK了,这样就完成了一个三层B/S的框架了。至于具体实现的细节这里就不讨论了,改天空了再说。
原文链接:.NET完全手动搭建三层B/S架构
.NET完全手动搭建三层B/S架构的更多相关文章
- 关于ASP.NET或VS2005 搭建三层架构的理解
最近想学习ASP.NET建网站,关于ASP.NET或VS2005 搭建三层架构的理解,网上摘录了一些资料,对于第(2)点的讲解让我理解印象深刻,如下: (1)为何使用N层架构? 因为每一层都可以在仅仅 ...
- CS通用项目系统搭建——三层架构第一天
CS通用项目:使用三层架构进行搭建 三层架构: 表现层(UI(User Interface)):展示给用户的层面,包含窗体控件数据等信息. 业务逻辑层(BLL(Business Logic Layer ...
- 【从零开始搭建自己的.NET Core Api框架】(二)搭建项目的整体架构
系列目录 一. 创建项目并集成swagger 1.1 创建 1.2 完善 二. 搭建项目整体架构 三. 集成轻量级ORM框架——SqlSugar 3.1 搭建环境 3.2 实战篇:利用SqlSuga ...
- OceanBase数据库实践入门——手动搭建OceanBase集群
前言 目前有关OceanBase功能.案例.故事的文章已经很多,对OceanBase感兴趣的朋友都想安装一个数据库试试.本文就是分享初学者如何手动搭建一个OceanBase集群.这也是学习理解Ocea ...
- SSM框架手动搭建
SSM框架手动搭建 创建web项目 IDEA创建Maven项目 [File]-->[new]-->[project..] 将项目变为web项目 [File]-->[Project S ...
- WindowsServer2012 R2 64位中文标准版(IIS8.5)下手动搭建PHP环境详细图文教程(二)安装IIS8.5
//来源:http://www.imaoye.com/Technology/WindowsServer2012R264IIS85.html 阿里云服务器ECS Windows Server 2012 ...
- Linux手动搭建LAMP环境
当你看到标题里的“手动搭建”,你是不是会想,难不成还有“自动搭建”?当然......不是,这里的“手动搭建”是指按部就班的搭建Apache.MySQL.PHP环境,是相对于集成软件包而言的.所以你是不 ...
- php 手动搭建环境
php手动搭建环境有好多种组合,版本号不一致,会导致搭建失败. 我搭建的组合是: php5.6+MySQL5.6+Apache2.4的组合. 一.PHP语言包下载 首先从官网上下载php5.6 htt ...
- 混合式app ionic2.x 手动搭建开发环境教程分享(nodejs,jdk,ant,androidsdk)
1.ionic简介 为什么选用ionic: 彻底开源且免费 性能优异 基于红的发紫的AngularJs 漂亮的UI 强大的命令行(基于更热门的nodejs) 开发团队非常活跃 ngCordova,将主 ...
随机推荐
- java poi处理新版xlsx后缀的excel
jar包下载地址http://poi.apache.org/download.html#POI-3.17,我把下载文件中的所有jar包都导入项目中才能跑 参考以下博客 https://www.cnbl ...
- MVC 导出Execl 的总结几种方式 (二)
接着上面的来,继续导出Execl 的功能 使用FileResult 方式直接可以生产Execl ,这样我们将会写大量处理后台的代码,个人感觉不好,只是展示出来,提供参考 第一步:编辑控制器 publi ...
- 【C++并发实战】(三) std::future和std::promise
std::future和std::promise std::future std::future期待一个返回,从一个异步调用的角度来说,future更像是执行函数的返回值,C++标准库使用std::f ...
- OpenStack IceHouse 部署 - 5 - 网络节点部署
Neutron网络服务(网络节点) 目录 [隐藏] 1 参考 2 前置工作 2.1 调整内核参数 3 安装 4 配置 4.1 keystone对接 4.2 rabbitmq对接 4.3 me ...
- POJ P2104 K-th Number
You are working for Macrohard company in data structures department. After failing your previous tas ...
- JQuery和html+css实现带小圆点和左右按钮的轮播图
是的!你没看错!还是轮播图.这次的JQuery的哟!! CSS代码: /*轮播图 左右按钮 小白点*/ #second_div{ margin-top: 160px; } .img_box{ over ...
- Java 实时论坛 - Sym 1.4.0 发布
简介 Sym 是一个用 Java 写的实时论坛,欢迎来体验! 如果你需要搭建一个企业内网论坛,请使用 SymX. 作者 Sym 的主要作者是 Daniel 与 Vanessa,所有贡献者可以在这里看到 ...
- 相比之前其他几个入门的, 推荐: 简单vue2 入门教程
注意:Vue.js 不支持 IE8 及其以下 IE 版本. 具体可以看下 http://www.runoob.com/vue2/vue-tutorial.html 以下是学习过程 Vue ...
- shell学习笔记--持续记录
1.#!/bin/sh 使用sh程序来执行下边的代码 #!/bin/more 输出下边的代码 #!/bin/可执行程序 下边的代码将会作为此程序的输入 2. * 可以用来匹配文件名,正则匹配,作为乘法 ...
- 算法之杨辉三角形(Java语言)
杨辉三角形, 又称贾宪三角形.帕斯卡三角形. 前9层写出来如下: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 ...