我最近一直在练习jQuery.ajax()。我已经开始学习调用.Net web-services qith jQuery.ajax()。
现在我正在考虑是否要对服务器上的某些服务方法使用 only jQuery.ajax()调用;有.Net Web服务还是我应该使用.ashx处理程序呢?
谢谢!
答案 0 :(得分:6)
来自the ASP.NET forums的两个引号:
除非它是一个极高负荷的情况,你会发现所有 三个表演几乎相同。你的代码里面的性能 处理程序/服务将成为限制因素。
对于仅用于公开的简单AJAX调用 浏览器,我不认为WCF证明其增加的复杂性。这很棒 对于某些事情,但我很难为此推荐它。
在ASMX和HttpHandler之间,我每次都使用ASMX。一个 HttpHandler的速度可能会快一点,但是ASMX“ScriptService” 对复杂类型进行JSON序列化和反序列化 透明,非常有用。
这是另一种选择:
如果你有一些想要运行的方法(而且你喜欢JQuery)......我 建议看看这个:
http://encosia.com/2008/05/29/using-jquery-to-directly-call-aspnet-ajax-page-methods/
及相关文章。工作很美。非常有效率 带宽去。他们还有一篇关于查询.asmx服务的文章。
没有与ASP.NET天生的臃肿大小相混淆 AJAX。由于开箱即用的AJAX可能非常臃肿。加上它非常 容易。
答案 1 :(得分:1)
您还应该了解微软最新的Web服务框架:WebAPI
就个人而言,我最近切换到ServiceStack.NET来获取我的网络服务,我发现它比WebAPI或WCF更容易和更优雅。
答案 2 :(得分:0)
WCF服务将是ASP.NET soap Web服务或ashx服务的首选方法。