ASP.NET 2.0 Ajax:调用Web Service

发表于:2008-04-09来源:作者:点击数: 标签:AjaxAJAXajax
——此文章摘自《ASP.NET AJAX程序设计:第II卷(客户端)》定价:55元 特价:41.25元 购买 ASP.NET AJAX之所以将Web Service提高到如此重要的位置上,让它几乎成为了ASP.NET AJAX 服务器 端逻辑最受推荐的实现方式,是因为Web Service天生就是纯粹为了业务逻
——此文章摘自《ASP.NET AJAX程序设计:第II卷(客户端)》定价:55元 特价:41.25元 购买>>

  ASP.NET AJAX之所以将Web Service提高到如此重要的位置上,让它几乎成为了ASP.NET AJAX服务器端逻辑最受推荐的实现方式,是因为Web Service天生就是纯粹为了业务逻辑而设计的。我们都知道,Web Service没有提供什么“花哨”的用户界面,而是心无旁骛地专注于程序逻辑上的实现,这恰好和ASP.NET AJAX客户端编程模型所倡导的“将表示层和业务层彻底分开”的理念不谋而合——客户端的ASP.NET AJAX框架用来处理程序所有的界面、用户交互功能,服务器端则仅仅提供纯粹的数据,不涉及任何表现样式。

  借助于ASP.NET AJAX异步通信层所自动生成的Web Service客户端访问代理,在表示层代码(也就是JavaScript)中调用Web Service获取数据变成了一件异常简单的事情——其表现出的优雅甚至让我们不敢相信:难道Ajax程序也能写得这么简单?

  接下来,我们通过一个简单的示例程序来了解在ASP.NET AJAX应用程序中使用JavaScript异步调用Web Service的方法。出于演示的目的,程序的功能非常简单:用户在页面的文本框中输入名字,然后点击旁边的按钮,如图3-1所示。


图3-1 用户在界面中输入自己的名字

  程序将借助ASP.NET AJAX异步通信层以Ajax方式把用户的名字发送至服务器端的Web Service。随后该Web Service在服务器端根据用户的名字生成一段问候信息并发送回客户端,客户端收到服务器响应之后,将这段问候信息显示出来,如图3-2所示。


图3-2 程序显示来自服务器的问候信息

  让我们先从服务器端的Web Service入手。新建一个名为SimpleWebService的Web Service类,并在其中声明一个普通的Web Service方法——SayHello()。该方法将接受一个名为name的参数,并生成一条问候信息返回:
  [WebService(Namespace = "http://tempuri.org/")]
  [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
  public class SimpleWebService : System.Web.Services.WebService
  {
  [WebMethod]
  public string SayHello(string name)
  {
  return string.Format("Hello {0}!", name);
  }
  }

原文转自:http://www.ltesting.net