当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net下PageMethods使用技巧

ASP.NET
从ASP.NET的PHP执行速度比较谈起
基于ASP.NET2.0的非HttpModule山寨版MVC框架的实现
ASP.NET 中公有的六种验证控件
无废话C#设计模式之八:Facade
C# 中的 @ 符号的使用及注意事项
保护你的.Net代码:谁动了我的组件?
VS2008与.NET 3.5的JS智能感知和调试
关于 .Net 开发下的分布式缓存设计
在C#3.0中使用扩展方法来扩展接口
C#实现Windows 服务的制作安装和删除
C#3.0中实现隐式类型变量、匿名类型的方法
C#代码与javaScript函数的相互调用
构建 ASP.NET AJAX 开发环境
Windows 窗体的.Net 框架绘图技术
.NET 开发中的一些小技巧集锦
ASP.NET 2.0 创建母版页引来的麻烦
.NET Compact Framework 概述
.NET Compact Framework 2.0 SP1新增功能
专家访谈:从Web 2.0到Web 3.0
.Net里漂浮窗口拖动的实现方法

ASP.NET 中的 asp.net下PageMethods使用技巧


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-11   浏览: 67 ::
收藏到网摘: n/a

ASP.net AjAX中的PageMethods可以将静态页方法添加到 ASP.NET 页中并将其用作 Web 方法。然后,无需创建单独的 .asmx 文件即可从该页中的脚本调用这些方法,就好像这些方法是 Web 服务的一部分。特别是在一些交互流程不复杂而调用次数和方法又比较多的情况下更为方便。因为PageMethods不需要我们再添加另外的WEB服务或Page来处理请求。

以前一直都是用WEB Project方式开发网站,在不少地方使用PageMethods,可以说是轻车熟路了。这次想尝试下WEB Site方式,因为修改代码后不用编译,再次刷新页面就能看到效果,这点比较方便。

可是我在使用PageMethods时,却遇到了麻烦。加好了ScriptManager,给静态方法加上了[WebMethod]特性,可是页面输出就是看不到ScriptManager:( 以为是.net 3.5或vs2008的问题,google没有答案。又怀疑是网站中某个handlers或是导致出错,重新检查过,并且移除所有handlers测试,结果还是不行。

快要崩溃的时候注意到个问题,MSDN中的例子给出的例子代码是放在aspx文件中,而我的代码是放在CodeFile中,会不会是这个问题呢? 将自己的静态方式代码移到ASPX文件中,再刷新页面,PageMethods出来!!!

差点要砸电脑了

为什么会有这样的限制?为什么非要要ASPX文件中PageMethods才有效....

image

ScriptManager.EnablepageMethods="true"

image

静态方法定义

image

JS调用方法。