
??此文章摘自《ASP.NET AJAX程式设计:第II卷(客户端)》定价:55元 特价:41.25元 购买>>
这就是个普通的Web Service,没有任何不相同之处。注意,不要忘记为SayHello()方法添加[WebMethod]属性,这是每个Web方法都必需的。
为了让ASP.NET AJAX生成该Web Service的客户端异步调用代理,进而允许我们在JavaScript代码中直接调用该方法,我们还要再为SimpleWebService类添加 [ScriptService]属性,这一部分才是ASP.NET AJAX为Web Service提供的附加功能(注意代码中粗体部分): //………… [ScriptService] //………… public class SimpleWebService : System.Web.Services.WebService { //………… }
我们也能够直接为需要暴露给客户端的Web Service方法添加[ScriptService]属性,而不必将其添加到Web Service类上。
[ScriptService]属性位于System.Web.Script.Services命名空间中,假如需要的话,还要添加如下的using语句: using System.Web.Script.Services;
下面列出完整的SimpleWebService Web Service代码,注意其中粗体部分: using System; using System.Web; using System.Web.Services; using System.Web.Services.Protocols; using System.Web.Script.Services; [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [ScriptService] public class SimpleWebService : System.Web.Services.WebService { [WebMethod] public string SayHello(string name) { return string.Format("Hello {0}!", name); } }
完成了Web Service编写之后,我们来先行测试一下??研发过程中不断地进行阶段性测试有助于尽快发现潜在的问题,并将其扼杀在萌芽中。假如一切顺利的话,那么测试该Web Service时能够看到如图3-3所示的结果。
 图3-3 测试Web Service时的界面
[1] [2] [3] [4]
|