现在,可以像我们现在所使用的那样使用HelloWorldService服务了。下面,我给出了一个比较清晰完成的示例代码。ScriptManager 标签也进行了显示。注意我们添加了一个clientServiceHelper.js 文件。我们在那个文件中放置了所有客户端和WCF通信的JavaScript函数。
<asp:ScriptManager ID="ScriptManager1" runat="server"> <Scripts> <asp:ScriptReference Path="~/Script/ClientServiceHeler.js" /> </Scripts> <Services> <asp:ServiceReference Path="~/ToDoService.svc" /> </Services> </asp:ScriptManager> 在of clientServiceHelper.js文件部分,我们使用了一个ASP.NET AJAX 客户端对象模型来编写JavaScript客户端代码。 Type.registerNamespace("ServiceClients"); ServiceClients.ToDoClient = function() { }
ServiceClients.ToDoClient.prototype = {
AddToDo: function(todo, callback, errorCallBack) { ServiceLibrary.IToDoService.AddToDo(todo, callback, errorCallBack); },
DeleteToDo: function(todo, callback, errorCallBack) { ServiceLibrary.IToDoService.DeleteToDo(todo, callback, errorCallBack); },
UpdateToDo: function(todo, callback, errorCallBack) { ServiceLibrary.IToDoService.UpdateToDo(todo, callback, errorCallBack); },
GetAllToDo: function(callback, errorCallBack) { ServiceLibrary.IToDoService.GetAllToDo(callback, errorCallBack); },
dispose: function() { } }
ServiceClients.ToDoClient.registerClass('ServiceClients.ToDoClient', null, Sys.IDisposable)
if (typeof (Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();
|
小结
在本篇文章中,我们已经了解到如何使用启用Ajax的WCF服务项模板。然后,我们了解了如何使用一个基于WCF服务的服务接口。我们也了解到如何配置web.config文件来使用服务。最后,我们了解了在ScriptManager中如何添加一个服务引用。我们也能够在C#代码中添加一个服务引用。其示例代码如下所示:
ScriptManager manager = ScriptManager.GetCurrent(Page); ServiceReference reference = new ServiceReference("ToDoService.svc"); manager.Services.Add(reference); |
【编辑推荐】
- 使用ASP.NET AJAX调用WCF服务项模板
- 详解Ajax在ASP.NET中的实现方式
- 使用ASP.Net 3.5的Ajax与Web服务开发实例