AjaxPro应用二三事

ajaxpro是谷歌推出的一个.net开源AJAX类库(框架?),让我们能更简单的实现ajax那套玩意。我们的项目中用到了它,这里记录一点应用方面细节:

一、使用之前先注册

不是注册网站用户名!!!在需要使用它的类中,一般是Page_Load() 方法使用:

AjaxPro.Utility.RegisterTypeForAjax(typeof(PageClass));进行注册。

使用这个方法会自动在运行时向页面注册以下3段js引用:

 

<script type="text/javascript" src="/Source/ajaxpro/core.ashx"></script>
<script type="text/javascript">AjaxPro.token = "";</script>
<script type="text/javascript" src="/Source/ajaxpro/PageClass,App_Web_naxbcj6y.ashx"></script>
 可以看到最后一个引用中出现了我们在Page_Load方法中注册的类名和一个随机的ashx,这就是它真正实现ajax的地方。

 

二、AjaxMethod必须声明为public

      这个我一开始没注意,我的习惯是在页面类中自定义的方法均声明为private,若是这个方法在page中需要调用则声明为protected。

但是像上面这样做过以后,AjaxMethod怎么也访问不到 。找了段别人的代码一比较,发现原来是访问级别的问题。声明为public后即可正常使用了。

三、关于session的调用

 ajaxpro调用后台方法时,若在方法中有使用到session对象,则必须要为AjaxMethod的声明增加特性:

[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]

public string GetXX()

{//....}

 以上都是一些应用方面的小细节。具体的实现原理请参见知识库文章,点这里

 

 

posted @ 2011-04-15 22:58  os340223  阅读(223)  评论(0编辑  收藏  举报