我爱Aspx >> Asp.Net >> 在ASP.NET Atlas中调用Web Service—直接在ASPX页面上暴露Web Method作者:Dflying Chen(http://dflying.cnblogs.com/)
前面的一系列的文章都是直接调用单独的一个Web Service,而在实际项目开发中,特别是在对现有的项目转换中,把页面中的逻辑再提取到专门的Web Service中往往会带来相当多的工作。Atlas充分考虑到了这一点,允许您将服务器端的public方法加上[WebMethod]属性以允许客户端JavaScript的直接调用。
想允许客户端直接调用定义在ASPX页面中的方法,您需要指定该方法为public,并且添加[WebMethod]属性,例如如下定义在ASPX文件中的服务器端方法:
<script runat="server">
[WebMethod]
public int AddInt(int int1, int int2)
{
return int1 + int2;
}
</script>
在客户端,Atlas将为您Mashup出一个AddInt的JavaScript方法,存在于一个特殊的命名空间PageMethods中,这样您就可以通过PageMethods.AddInt()调用上面的方法了。
同时,将WebMethod定义到ASPX页面中,您还可以在该方法中访问一切页面上的服务器端控件的值和ViewState,并且整个页面的的生存周期将和传统的ASP.NET页面PostBack一样,诸如Page_Load等方法均会被调用,可以让我们对页面有更强的访问能力。不过这样也带来了性能上的折扣,因为每次调用Web Method的时候都会把页面上的ViewState和控件的值传回给服务器,并且服务器端处理整个页面的生存周期将要比仅仅处理一个纯粹的定义在ASMX中的Web Method要复杂的多。所以这里我推荐尽可能的使用纯粹的Web Service,请参考:在Atlas服务器端实现中推荐使用Web Service而不是Page Method。
Ҷƪл˵?
做完一个小网站的一点经验总结(2..[08-01]
做完一个小网站的一点经验总结(1..[08-01]
BackPack - 体验可读写的Web服务[07-30]
网站推广Web2.0[07-30]
保障Web数据库安全运行[07-30]
Web.config详解+asp.net优化[07-30]
Asp.net中多彩下拉框的实现[07-30]
论 Web 2.0 时代PHP的地位[07-30]
ASP.NET中数据校验部分的封装与应..[07-30]
ASP.NET网络编程中常用到的27个函..[07-30]
存储过程中调用C#写的DLL[08-01]
利用ICallbackEventHandle实现类..[08-01]
Photoshop"插值"放大图..[08-01]
岁月如水:用Photoshop打造年轮[08-01]
微软的木马、间谍防范器 Defende..[08-01]
公共场所慎用Foxmail5 以防泄露隐..[08-01]
Google语音搜索详细步骤曝光[08-01]
网络OS显神威 认识Linux远程桌面..[08-01]
用rsync修复不完整的Linux光盘映..[08-01]
用Illustrator CS的3D功能绘精致..[08-01]