【VB开源代码栏目提醒】:网学会员VB开源代码为您提供_NET平台下开发三层架构WinForm应用程序简介 - 期刊论文参考,解决您在_NET平台下开发三层架构WinForm应用程序简介 - 期刊论文学习中工作中的难题,参考学习。
信息技术与信息化 网络与通信. NET 平台下开发三层架构 W inForm 应用程序简介 赵春玲 do i: 10. 3969/ j. issn. 1672- 9528. 2010. 04. 09 摘 要 本文浅要介绍了基于 M icrosof t Visual St udio 2008/ . NET F ramew ork3. 5 开发 C Win - Fo rm 的三层架构应用程序的基本方法 简单演示了客户端与服务器端如何通过 Web Serv - ice 进行通信。
关键词 . NET . N ET F ramew ork W eb Service C Windo ws 窗体 Abstract T his art icle describes t he elementary know ledg e t o develop a t hree- tier applicat ion based i on C . It provides t he inf orm ation required t o deploy Web Service and int ro duces a met hod t hat the cl- ent applicat ion how t o call t he W eb Service. Key
words . NET . NET F ramew ork Web Service C Window s F orm 任何时间 以及 的最终目的就是让用户在任何地方、1 引言 文件和程序。
利用任何设备都能访问所需要的信息、 . NET 是 M icroSof t 公司为适应 Int ernet 高速 用户不需要知道这些文件放在什么地方 只需要发发展的需要 而隆重推出的新的开发平台 是目前最 出请求 然后只管接收就可以了 而所有后台的复杂流行的 Window s 平台应用程序开发环境。
可以用 性是完全屏蔽起来的。
来创建 Window s 平台下的 Window s 应用程序和网 3 NET Fr am ew or k 智能设备应络应用程序 也可以用来创建网络服务、用程序和 Of fice 插件等。
B/ S 架构的应用因为客户 . NET F ramew ork 是一种全新的运算平台 它 客户端的免安装而广受欢迎 而对于业务处理繁琐、 提供了在 Window s 操作系统执行应用程序所需要交互复杂的应用系统 三层架构的瘦客户端模式则 的服务 以及相关的应用程序接口 其中包含了两个是更为适用的方式。
主要部分: Comm on L ang uag e Runtime 公共 语言 运行库 简 称 CL R 以 及. NET F ramew o rk 类 库。
2 什么是. NET CL R 本身可以用于执行程序
代码管理及机制 应用 . NET 是微软的用以创建 XM L W eb 服务 下 程序在这样的机制 下 确保了 其安全性和正 确性。
设备和人以一种一代
软件 的平台 该平台将信息、 CL R 是. NET F ramew ork 的基础。
一般来说 在. 个性化的方式联系起来。
借助于.
NET 平统一的、 NET F ram ew o rk 中所编写的应用程序均须在 CL R台 可以创建和使用基于 XM L 的应用程序、进程和 的环境下运行 也因此受到 CL R 的监控。
类库包含Web 站点以及服务 它们之间可以在任何平台或智 提供开发应用程序所需功 了以面向对象理论设计、能设备上共享和组合信息与功能 以向单位和个人 能的各种类型。
提供定制好的解决方案。
NET 是一个全面的产品 . 4 Visual St udio 2008 简介家族 它建立在行业标准和 Int ernet 标准之上 提供 管理 服务器 、开发 工具 、 使用 构造块服务和智 Visual St udio 2008 是 开发. NET 应 用程序的能客户端 以及 XM L Web 服务体验 丰富的用户体 编辑、 一套完整的开发工具集 集设计、 运行和调试验 。
NET 代表了一个集合 一个环境 一个可以作 . 多种功 能于一体 的集成开 发环境 IDE 。
它 支持为平台支持 下一代 Int ernet 的 可编程结 构。
NET .
VB、VC 、 isual C 、 isual J 等多种开发语 V V 言 有助 于创 建混 和语 言解 决方 案。
使用 Visual 山东新华店集团信息技术中心 250002 Studio 可以高效的生成 Web 应用程序、 XML Web 2010 年第 4 期 33 信息技术与信息化
网络与
通信Serv ice、桌面应用程序和移动应用程序。
本文讲述 逻辑 而客户端仅保留用户交互和基本的输入项合的是基于 C 的 WinF orm 应用程序设计。
法性检测等 交互结果提交给中间层进行处理 然后 从中间层反馈回处理结果 也因此这样的客户端程5 C 简介 序称为瘦客户。
三层在这 里只是一个逻 辑上的概 C 是一门简单、 面向对象和类型安全的 现代、 念 并不是物理上的三台机器。
编程语言 是 Microsoft 专为. NET Framew ork 开 9 使用 C . NET 构建 WinF orm 应用程序发的一种程序设计语言 它由 C 和 C 发展而来。
通过 C 程序员可以快速的开发各种基于. NET 平 9. 1 应用环境搭建台的应用程序。
简单的 C 语言结构可以使构建的 安装 V isual Studio2008 这个集成开发环境包组件方便的转化为 XM L 网络服务 从而使他 们可 含 了. NET F ramew o rk 可 以 开 发 面 向. NET以由任何语言在任何操作
系统上通过互联网进行调 F ramew o rk2. 0 3. 0 3. 5 版本的应用程序。
用。
9. 2 创建应用
程序 在 Visual St udio 中 项目是独立的编程 单位。
6 W indo ws F orm 简介 生成和调试构成应用 在项目中 通过逻辑方式管理、 Window s F orm 即 Window s 窗 体 简称 Win- 数据连 程序的项 包括创建应用程序所需要的引用、F orm 是用于建立客户端程序的丰富的程序
设计 接、文件夹和文件 。
不同 的项目包含的 项各不相 工具框架 这些客户端程序能够提供改进的易用性、 同 如简单的项目可能由一个窗体或 htm l
文档、源支持和更低 的开发成本。
W indo ws F orms 是一 个
代码文件和一个项目文件组成 复杂的项目可能由新的窗体包 它使开发人员可以充分利用 Window s 这些项以及数据库脚本、存储过程、和对现有 XM L操作系统中丰富的用户界面特性。
Window s F orm s Web Ser vice 的引用组成。
项目的输出通常是可执是新的 Microso ft . Net F ramew o rk 的一部分 它使 动态链接库 . dll 文件或模块等。
行程序 . exe 、 受控的执用了很多新技术 包括一个共用程序框架、 Visual Studio 的解决方 案可以包含一 个或多 集成的安全性和面向对象的设计原则。
利行环境、 生成和 个项目。
解决方案管理 Visual St udio 配置、用 Visual St udio 的共享开发环境 开发人员可以使 部署相关项目集的方式。
复杂的应用程序可以有多用任何支持. NET 平台的语言开发 WinF orm 应用 个解决
方案。
程序 包括
VB、 等。
C 1 9 21 1 创建 w indow s 窗口应用程序 运行 Visual St udio 2008 在/ 文件0菜单中单击7 W eb Service 简介 / 新建- 项目0 在/ 新建项目0窗口中选择项目类型 Web Serv ice 的主要概念就是可以让你所撰写 / Visual C 0 指定 模板为/ Window s 窗体 应用程好的服务公开在网路上 让世界各地不同的使用者 序0 指定项目名称和解决方案名称 点击/ 确定0按只要借由网路上
常用的通讯协议 H T T P 就可以调 钮项目默认生成一个窗口/ Fo rm1. cs0 在属性窗口用你所写的 服务。
从表面上看 Web Service 就 是 中修改窗口的名字为自己所需要的名字 如/ Mian -一个应用程序 它向外界暴露出一个能够通过 Web Fo rm0 另存 For m 文件并 指定为易于理 解其功能进行调用的 AP I。
这就是说 你能够用编程的方法 的名字 如 MainFor m. cs 可将该窗口作 为应用程通过 Web 来调用这个应用程序。
我们把调用这个 序的入口。
这时就可以使用 V S 的工具箱在窗口上Web Service 的应用程序叫做客户。
按照这样的理 添加各种应用程序所需要的控件 如: 按钮 文本框念 只要大家遵循 Web Serv ice 的标准 各个服务间 等。
如需要增加新的窗口 只需要在菜单/ 项目0中就可以达到串通的目的 而你所写的服务就可以到 点击/ 添加 Window s 窗体0添加新的窗口。
达世界的任何一个角落。
1 9 21 2 增加数据处理层 或业务逻辑层 新建一个项目 与上一步骤不同的是在模板中8 三层架构 选择/ 类库0 指定名称为/ Dat aAccess0。
所谓三层 其实就是在客户端和数据库之间加 数据处理层主要完成对数据库的各种操作 在了一个中间层 即应用服务层 负责处理复杂的业务 复杂的业务系统中 可以将业务逻辑单独分离出来34 2010 年第 4 期 信息技术与信息化 网络与通信增加一个业务逻辑层 以业务逻辑层调用数据层的 - Dat aAccess. T est Class da _T est new Dat a处理 方便程序的维护。
本文的
演示将运行在服务 Access. T est Class 器端的业务和数据处理均包含在数据处理层 不做 ret urn da _ T est . get Dat aSet sqlst r . T ables复杂封装。
0 本文数据库以 oracle 为例 连接 or acle 数据库 需要添加对 Syst em. Dat a. OracleClient . dll 引用。
在/ My WebSer vice0项目上点右键选择/ 生成0 增加一获得简单
查询数据集的方法: 产生可供客户端调用的服务。
public Dat aSet g et Dat aSet str ing sqlst r / / 连 1 9 21 4 在客户端添加服务引用接数据库表产返回一个 Dat aSet 客户端即第一步生成的 w indo w s 窗 口应用程 序 在该项目中添加服务引用。
st ring connst r data source OraSerName 在/ 添加服务引用0窗口的地址栏输入刚才上一User Id DBU serName P assw or d U serP ass 小节生成的 w eb service 可使用/ 发现0按钮查找 Or acleCo nnect ion co nn new OracleCo nnec - 点/ 高级0后在打开的服务引用设置窗口选择 / 添加t ion connstr Web 引用0 根据提示选择以上示例中的服务 T est - DataSet ds new Dat aSet Serv ice 点击/ 添加引用0完成服务的引用。
这时 在 tr y w inf orm 中就可以调用本服务中的方法了。
如 在 M ainFo rm 中添加一个 dataGridView 控件 命名为 conn. Open dgvT est 我们即 可以使 用以下 方法调 用 w ebser - Or acleDataAdapt er adapt er new Oracle - vice 中的方法。
DataAdapt er
sql st r conn T est Web. T est Service ser _ T est new adapt er. Fill ds T est Web. T est Serv ice dgvT est . Dat aSo urce ser _T est. T est Serv ice cat ch Ex cept io n ex _g et Dat aT able select fro m t _f l1 编译客户端 生成可执行程序。
至此 一个简单 Co nsole. Writ eLine ex . M essag e 的三层架构的瘦客户端应用程序就算完成了。
实际上
webservice 只是提供了 客户程序 与中 finally 间层服务程序之间的通信接口。
我们所说的三层架 构中的中间层是指完成业务逻辑的服务程序。
实际 conn. Close 使用中 我们只需要提供给终端用户客户端可执行 程序 也就是以上示例中的 T est WinF orm sApp 它 ret urn ds 通过 w ebservice 提供的接 口访问远程计 算机上的 服务程序 服务器端程序完成对数据库的访问。
要 在/ Dat aAccess0项目上点右键选择/ 生成0 产 实现远程调用只需要在客户端添加服务引用时指向生其相应的 dll 调用。
远程机器的 Web 服务。
1 19 2 3 增加 WebService 层 参考文献: 新建一个项目 与上一步骤不同的是在模板中选择/ ASP. NET Web 服务应用程序0 指定名称为/ My - 1 周羽明 刘元婷. NET 平台下 Window s 程序WebService0
代码中服务类名指定为/ Test Service0。
设计 1 电子工业出版社 2010. 04 在 w ebservice 中添加对 DataAccess 的引用 增 2 青软 实训 组 编 于 翔 编 著 1 在 实 战中 成加一方法调用 Dat aAccess 中已经定义好的方法: 长 Windo w s F orm s 开发 之路 1 电 子工 public Dat aT able T est Ser vice _ get Dat aT able 业出版社 2009. 06 st ring sqlst r 3 江红 余青松 编著 1 C . NET 程序设计教 程1 清华大学出版社 2010. 02 2010 年第 4 期 35