100分我想问个问题:关于在AJAX 1.0中 JAVASCRIPT调用PageMethods的一个问题!
我做一个网站,需要从前台的javascript中调用后台的service
用的是ajax 1.0 正式版
现在出现了一个问题,我在后台的_default类里写了一个 <WebMethod()> _ (VB.NET,C#为[WebMethod])
的过程,用来在前台调用,但是好像必须在这个过程前加上Shared(VB.NET,C# 为STATIC)才能调用.一加上这个之后,就出现了许多
"没有类的显式实例,就无法从共享方法或共享成员初始值设定项中引用该类的实例成员"
比如我原来有个语句叫DataList1.DataBind()
现在这个语句就不能执行了,就是说在过程中加上shared后,服务器控件都不能直接通过名字访问了
都我该怎么办,现在我对Vb.net的面向对象不是很甚了解,所以希望能指点明路
------解决方案--------------------页面调用后台服务及方法,看一下WEBCAST中赵劼的AJAX教程
------解决方案--------------------在1.0正式版当中是这样的,PageMethod就相当于Web Service里面的一般WebMethod,反正就是不能访问Page实例。以前CTP的时候并非如此的,确实能够好像你所说的那样,想访问Page中某个控件直接操作就是了。但是正式版中基于效率的考虑,取消了这一功能,因此PageMethod必须是静态的,也就是请求的过程中,并没有任何Page实例与当前请求相关联,不能使用Page的任何功能。