如何SQL数据库操作在WCF中的应用
1 WCF编程模型
Windows Commuunication Foundation(WCF)[1]是统一的编程模型,用来为微软平台编写分布式应用,它涵盖了之前出现的多种技术,是面向服务(SOA)思想的一个具体应用。WCF通过SOAP(Simple Object Access Protocal 简单对象访问协议)[2]能够方便访问分布在异构网络中的不同应用。WCF实际上构建了一个框架,这个框架实现了在互联系统中各个Application之间通信。
基于WCF的开发主要分为服务端和客户端应用两部分。服务端包括契约的定义、实现和寄宿三方面;客户端包括客户端代理的生成和服务的实现。构建一个典型的解决方案包括4个项目[3]:①Contracts:定义服务契约(Service Contract),引用iceMode程序集(WCF框架的绝大部分实现和API定义在该程序集中);说明要实现什么服务;②Services:提供WCF服务的实现。实现定义在Contracts中相应的服务契约,说明如何实现Contracts定义的服务;③Hosting:实现对定义在Services项目中服务的寄宿,该项目须同时引用Contracts和Services两个项目和iceMode程序集,启动和关闭服务、实例化Service类并提供服务的访问地址和通信方式;④Client:生成终结点、绑定、契约相关服务代理类,通过代理类完成最终服务。
2 WCF中SQL Server常用操作
WCF中的编程语言是C#,C#对数据库的操作基于对象模型,该对象模型包括数据提供程序和DataSet组件,数据提供程序有4个,分别是:Connection对象、Command对象、DataAdapter对象和DataReader对象,WCF主要使用这几个对象对数据库进行操作。
2.1 数据库连接
本例中定义了两个方法,分别实现数据库的'连接和关闭。
2.2 Services数据库查询、插入、更新和删除
在Contracts中定义了一系列和数据库操作相关的接口,在Services中实现了数据库的打开和关闭服务,对数据的增删改查也是在Services中实现的。数据的增删改查操作通过DML(Data Manipulation Language)语句实现,DML包括4种基本操作,即INSERT、UPDATE、SELECT和DELETE,分别对应插入、更新、查询和删除操作。
(5)HOSTING托管
本例通过IIS托管相应服务。
3 Client数据显示
3.1 生成客户端代理
WCF生成客户端代理的方法有多种:硬编码代理类、通过和添加服务引用。本文通过添加服务引用生成了iceClient代理类,通过代理类的对象可以调用Services中定义的服务。
3.2 客户端查询数据实现
(1)登陆实现
以上代码实现了整表数据查询,并绑定到数据控件GridView中显示。
4 结语
本文给出了一个基于WCF的数据库访问完整应用,在WCF架构下,通过常用数据库组件对SQL Server数据库进行访问,实现增删改查相关业务,并在客户端完成调用,实现不同应用。
WCF架构依次分为:客户层→服务层(业务逻辑层、数据访问层)。本文例子不足之处是业务逻辑层和数据访问层没有分离,今后的改进中可以更加清晰这两层关系。
-
全国计算机二级mysql数据库模拟试题
为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是小编搜索整理的全国计算机二级mysql数据库模拟试题,供参考练习,预祝考生们考出自己理想的成绩!全国计算机二级mysql数据库模拟试题及答案1)函数max()表明这是一个什么函数?A求总值函数B求最小值...
-
数据库营销方案
营销主要是深挖产品本身的内涵,切合准消费者以及众多商家的需求,从而让消费者深刻了解该产品进而购买的过程。下面,小编为大家分享数据库营销方案,希望对大家有所帮助!一、项目背景伴随着全面建设小康社会的推进,城乡一体化趋势不断增强,外出务工人员在社会经济中扮...
-
酒店门锁系统图解
导语:积极的人在每一次忧患中都看到一个机会,而消极的人则在每个机会中都看到某种忧患。以下小编为大家介绍酒店门锁系统图解文章,欢迎大家阅读参考!酒店门锁系统图解酒店智能门锁系统——酒店智能门锁系统简介酒店智能门锁系统是电子锁的其中一部分系列产品,他与...
-
计算机考试三级数据库练习题
数据是指所有能输入的计算机之中并被计算机程序所处理的符号。下面给大家整理了计算机考试三级数据库练习题,欢迎阅读!计算机考试三级数据库练习题1.实体是信息世界中的术语,与之对应的数据库术语为(d)A.文件B.数据库C.字段D.记录2.层次型、网状型和关系型数据库...