三层架构的实现详解
来源:互联网 发布:不锈钢腰带 淘宝搜索 编辑:程序博客网 时间:2024/04/28 03:15
ASP.NET中“三层架构”的开发方法,其思想跟JAVA的类似,JAVA中的三层架构为前端的Html、 Jsp、Serlet,中间层为JavaBean、EJB,后面为数据库服务器。在ASP.NET中,请端为HTML、asp、aspx等,中间层为.vb,.cs等文件编译而成的.dll控件,后面为数据库服务器。
在三层架构中,数据层通过中间层来连接以及操作,前端给中间层传递参数,并接受中间层的返回值。一般情况下,主要关注的是中间层与前端的数据交互,中间层可被称为组件,一般为.dll文件。在ASP.NET中.dll文件不
用考虑注册的问题,拷贝过来就可以用。
在设计模式上,三层架构的三层分别成为:表示层,业务层和数据层。
a、表示层:
提供应用程序的用户界面,通常也包括Window窗体和ASP.NET页面的使用。
b、业务层:
业务层实现应用程序的业务功能。
c、数据层:
数据层提供对外部系统(如数据库)的访问,该层涉及到的主要.NET技术是ADO.NET的数据库访问技术.
服务端(添加 windows-windows服务)<-共享程序集(类库)<-客户端(windows窗体应用程序)
过程详细:
1 共享程序集 类Class1.cs的构造函数要继承 public class Class1:MarshalByRefObject{}
2 (重新生成)服务端 客户端的引用 添加 浏览共享程序集的****.dll文件。 添加- .net 的
system.runtime.remoting
3 (重新生成)服务端 添加-应用程序配置文件App.config
4 (重新生成)解决方案 添加-其他项目类型-安装项目Setup1
5(重新生成)Setup1 右击-视图-自定义操作-(打开后)自定义操作右击-选择项目中的项-直接确定2次(已选
好,默认) 另外,右击Setup1,添加-项目输出-下拉选定“共享程序集”和Setup1右击添加-文件-并浏览
App.config
6 (重新生成)服务端 打开Service1.cs后,右击,添加安装程序,生成seviceinstaller1和色弱
viceprocessinstaller,分别属性,servicename项可以自定义名称如“hotel”(开始-运行-管理工具-服务就
可以找到服务hotel,并启动它。下面用到)。ProjectInstaller.cs属性的account 选为localsystem(本地系
统)
7 最后,找到D:/My Documents/Visual Studio 2008/Projects/Classpenghotel/Setuphotel/Debug中的
setup.exe应用程序,双击安装。之后(开始-运行-管理工具-服务就可以找到服务hotel,并启动它)
8 代码部分:除1外,还有
A.服务端的Service1.cs,查看代码有两方法: protected override void OnStart(string[] args){}和
protected override void OnStop() 启动和未启动 函数,在OnStart方法中给字符串赋值(字符串是在共享程
序集那定义的,但不赋值)。而且该类要using引用
using Classpenghotel;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels.Tcp;
B.共享程序集的class类 using引用,因有sql语句
using System.Data.SqlClient;
using System.Data;
C. App.config中,代码增加
<system.runtime.remoting>
<application>
<service>
<wellknown
mode="Singleton"
type="Classpenghotel.Class1, Classpenghotel"
objectUri="SayHello" />
</service>
<channels>
<channel port="8090" ref="tcp"></channel>
<!--<channel port="8090" ref="http"/>-->
</channels>
</application>
<customErrors mode="off"></customErrors>
</system.runtime.remoting>
主要注意 type=“”的写法
最后 Class1.constr = "data source=.//YAO;database=hotelmanage2009;Integrated Security=true";连接
“yao”改成自己的服务器名ok
调试之前要启动服务(setup安装后的hotel,启动),否则出现 "目标机器拒绝...."
- 三层架构的实现详解
- Java Web三层架构的配置详解
- Java Web三层架构的配置详解
- [三层架构]Asp.net三层架构详解
- C#三层架构详解
- 三层架构详解
- 详解三层架构图
- 三层架构详解
- 浅析C#中三层架构的实现
- 浅析C#中三层架构的实现
- jdbc实现三层架构的关键代码
- 三层架构的原理及实现
- C#三十六 三层架构的实现
- 三层架构之实现
- SSM实现三层架构
- asp.net三层架构详解
- asp.net三层架构详解
- asp.net三层架构详解
- 索智SC8600介绍
- 性能测试之:日志log4j.log配置的问题
- 云终端如何为用户省钱
- 堆栈
- hibernate 3
- 三层架构的实现详解
- [转]Flex 自动获取焦点 监听全局键盘事件
- 云终端常见问题解答集锦
- DirectX之Shader概述
- Flex总结--实现文本框的输入下拉提示
- FusionCharts 的 XML标签属性
- 同方安全云终端办公30用户解决方案
- javafx 学习入门
- 终端计算、集中计算、云计算这三种计算模式优缺点的比较表