创建.NET Web服务(转)

web|web服务|创建

Web服务是构造分布式、模块化应用程序的最新技术发展趋势。Web服务可以把业务逻辑划分一个一个的组件,然后在整个因特网的范围上执行其功能。本文就是向读者展示一个简单的.NET Web服务创建过程。

假如你过去曾经构造过微软世界的COM组件,那么你对创造可重用对象中间层的概念应该是比较熟悉了,正是可重用对象可以让开发者重用代码、利用由此带来的软件开发灵活性。这些组件能作为客户应用程序放在同一计算机上执行,或者以DCOM的形式在分离的机器上执行。

现在的.NET体系则把以上的概念大大推进了一步,.NET允许你把组件放在远程计算机上,而且你同这些远程计算机之间仅存在HTTP连接;换句话说,这些远程机器可能并不在企业网络内。由于SOAP协议的出现,DCOM的二进制标准也被基于文本和XML的调用语法代替了,新的技术标准允许客户采用任何操作系统调用Web服务,而这些Web服务则运行在任何操作系统上。

用.NET打造Web服务
微软早在大约两年前就发布了针对Visual Basic 6的SOAP工具包,但是,.NET出现后则进一步把构造Web服务的任务变得更方便了。对Web服务的支持已经内置在了.NET基础框架之内,这意味着任何.NET语言都能创建Web服务。Web服务甚至成为了Visual Studio.NET中的一种工程类型。就象大多数.NET工程类型一样,你甚至能采用记事本这样的文本编辑程序创建全部应用程序。

为了创建Web服务,你的开发计算机上至少需要安装了ASP.NET引擎。这种引擎属于.NET框架和Visual Studio.NET的一部分。如果你手头没有ASP.NET引擎,那么你不妨从asp.net网站下载ASP.NET。下载软件只能在Windows 2000和Windows XP上使用。安装了ASP.NET之后,你要不创建一个虚拟目录要不直接在inetpub\wwwroot目录下创建自己的文件,我举的例子就用后面的方法。

最近看过伦敦一家公司的网站,他们网页上的价格单位是英磅。页面上有一个转换工具允许你把英镑换算为美元。这个转换工具就是一个绝佳的Web服务实例。现在就请打开记事本程序准备创建XML Web服务吧。

创建Web服务的第一步是标识Web服务、说明服务使用的语言同时创建的类的名字。在这个例子中,采用的Web服务编程语言是Visual Basic.NET,类的名字是ConvertMoney。你的第一行代码如下所示:

<%@ WebService Language=”VB” Class=”ConvertMoney” %>

接着,采用Imports声明导入System.Web.Services名称空间。这样做才能让你按照名字索引WebService等类而无须索引整个名称空间。该行代码如下所示:
Imports System.Web.Services

然后创建Web服务自身的shell。WebService类在你自己的类的名字前加上前缀,代码如下:

<WebService()>Public Class ConvertMoney
‘ code will go here
End Class

到这一步几乎就可以增加类的功能了,但是你还得先增加一行关键代码。你必须继承WebService基类,这是.NET框架的一部分。这样做所实现的功能令你的服务类可以被任何Internet客户调用。增加Inherits声明之后,所有的代码如下所示。

<%@ WebService Language=”VB” Class=”ConvertMoney” %>
Imports System.Web.Services
<WebService()>Public Class ConvertMoney
   Inherits WebService
   ‘ code will go here
End Class
现在就可以给你的类添加功能了。在这里,你创建了一个简单函数接受英镑的货币量然后返回美元值。通常,你还应该在数据库内找到两种货币之间的交换汇率。在上面的例子里,你在代码中直接把汇率设定为1英镑可兑换1.44美元。在以上代码块中增加代码之后全部Web服务代码如下所示。
<%@ WebService Language=”VB” Class=”ConvertMoney” %>
  Imports System.Web.Services
  <WebService()>Public Class ConvertMoney
    Inherits WebService
  <WebMethod()>Public Function _
    PoundsToDollars(BritishPounds As Double) As Double
    Return BritishPounds * 1.44
  End Function
End Class

代码编写完毕,你把代码文件存放在某个虚拟目录下(通常是c:\inetpub\wwwroot)即可。把文件保存为Converter.asmx。ASMX文件扩展名是.NET Web服务的标记。保存文件之后,你的Web服务就准备露脸了。

时间: 2024-08-03 14:41:02

创建.NET Web服务(转)的相关文章

asp.net 创建一个Web服务

Web服务提供了一个共同的接口,沟通和交换数据,不同的系统.这句话听起来很普通,没有真正帮助您了解什么是网络服务.相反,我认为下面的图表提供了一个更好地了解什么网络服务是: 所以,你有Web应用,你真的想使用当前的应用与它交流.不幸的是,您的应用程序没有任何想法如何沟通的Web应用程序,但大家都希望不会失去!您的应用程序执行调解-网络服务-转换的要求您的应用使成一种公认的W e b应用程序. 换言之,网络服务使您的应用程序进行交流的任何藏身回来.不管用什么语言的应用程序编码中,什么类型的服务器的

如何创建RESTFul Web服务

想写这篇文章很久了,这是个大话题,不是一时半会就能说清楚的. 所以准备花个一星期整理资料,把思路理清楚,然后再在Team里做个sharing:) 其实RESTFul是架构风格,并不是实现规范,也不一定非要用HTTP,但鉴于HTTP的普世性和 SOA的实现基本都基于HTTP实现. 这句话只对了前一半, 实际上REST和HTTP是息息相关的,是一种Web架构,WWW是世界最大型的分布式应用,而其实现就是基于REST的web架构的设计标准,REST架构的提出者(Roy T. Fielding 2000

用Java技术创建RESTful Web服务

简介:JAX-RS (JSR-311) 是为 Java EE 环境下的 RESTful 服务能力提供的一种规范.它能提供对传 统的基于 SOAP 的 Web 服务的一种可行替代. 在本文中,了解 JAX-RS 的主要组件.本文用一个例子展示了一个企业如何使用 JAX-RS 内的功能以 一种 Restful 的方式公开员工的联系信息. 背景 多年来,开发人员使用各种工具在其 Java 应用程序内创建 RESTful 服务.由于 REST 架构的简单性,主要需求 - 接收 HTTP 消息和 头部的能

在NetBeans 6中创建SOAP Web服务

在本文中,我将介绍如何在 NetBeans 6 中创建 Web 服务.在此后的文章中 ,我将讨论如何在调用 Web 服务操作之前处理 SOAP 消息. 在本例中,我将结合使用 JAX-WS 2.1 与 NetBeans 6.0. Web 服务描述语言(WSDL) 开发 Web 服务有许多方式.其中之一便是创建 WSDL.首先,您必须了解 Web 服务的应有作用.您需要考虑各 Web 服务操作的输入和输出.在本文的例子中, 我们只创建了一个操作,名称为 "getcalculateValues&qu

使用 PowerDesigner 9.5 创建 Web 服务

web|创建 使用 PowerDesigner 9.5 创建 Web 服务   Sybase 公司PowerDesigner 总设计师Xiao Wang撰稿   Web 服务允许您以标准格式提供现有的或新增的功能,并且允许用户和应用程序从任何位置访问它们. PowerDesigner 9.5 同时针对 Microsoft .NET 和 Java 引入了完善的 Web 服务设计和生成机制.使用 PowerDesigner 9.5,您可以专注于 Web 服务的设计,而将所有必需的生成.实现构造的任务

如何创建和使用Web服务

web|web服务|创建 简介 .NET最强大的一个方面之一就是可以利用它创建Web服务.一个Web服务就是一个网站所提供的供其它网站调用的外部接口.举个例子来说,某个金融公司可以为与它的贸易伙伴通过Web服务提供详细的股票报价,这些信息可以是通过Web页面进行读取和显示的,也可以是从客户的桌面电脑的应用程序里读取的. 本文就对Web服务的其中两个方面进行说明:一是如何创建Web服务:二是如何使用Web服务.作为例子,我们以来自ASPFAQs.com(http://www.aspfaqs.com

在C++中创建并使用Web服务

Web服务的确是.net中让人激动的部分--但它们本身比.net要大.其中的道理很简单.几乎所有你能叫出名字的服务都有一些执行服务器端代码的机制:你在浏览器的地址栏中输入一个URL:接收到你的请求,服务器上就开始运行什么东西,然后以html页面返回你要的结果.它可能是ASP,ASP.NET,Servlets,甚至是五年前通过CGI触发的Perl本.因此想象一下,如果运行代码返回的是XML格式而非HTML格式的结果,并且服务请求并非是在浏览器地址栏中输入的url,而是某些代码中以HTTP中的GET

vc#中如何创建web服务??

问题描述 在vs2005中,如何创建web服务?一个方法是建一个asp.net web服务(新建网站)另一个是"新建文件"---web服务这两个方法有什么区别?用后一个方法创建的web服务如何调用?? 解决方案 解决方案二:请高手来指教一哈啊.

使用 Eclipse 在 Google App Engine 上创建 mashup,第 3 部分: 使用 RESTful Web 服务

使用社会网络可以更轻松地获取并聚合数据,从而创建富有革新精神的新 Web 应用程序.但是,仍然必须处理创建可伸缩 Web 应用程序的所有常见问题.现在,使用 Google App Engine (GAE) 也可以简化工作.使用 GAE,可以不必考虑管理应用服务器池的所有事务,而是集中精力创建优秀的 mashup.本文是共分三部分的系列文章 "使用 Eclipse 在 Google App Engine 上创建 mashup" 的最后一部分,在本文中,将利用并进一步增强在前两部分中构建的