今天下载了Ajax.NET Pro6.5.5.1,看了一下官网上的QuickGuide,按指导一步步做,其中我把客户端调用代码改成了间隔1秒钟去取一次时间,结果出来了,并总结出必须注意的几个要点。
★后台代码如下:
-----------------------------------------------------------------------------------------------------------
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
3
![](/Images/OutliningIndicators/InBlock.gif)
4
![](/Images/OutliningIndicators/InBlock.gif)
5
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
6
![](/Images/OutliningIndicators/InBlock.gif)
7
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
8
![](/Images/OutliningIndicators/InBlock.gif)
9
![](/Images/OutliningIndicators/InBlock.gif)
10
![](/Images/OutliningIndicators/InBlock.gif)
11
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
12
![](/Images/OutliningIndicators/InBlock.gif)
13
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
14
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
★前台代码如下:当页面载入后,间隔一秒从服务器上取得时间并显示在aspx页面上的divMsg中
----------------------------------------------------------------------------------------------------
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
6
![](/Images/OutliningIndicators/InBlock.gif)
7
![](/Images/OutliningIndicators/InBlock.gif)
8
![](/Images/OutliningIndicators/InBlock.gif)
9
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
10
![](/Images/OutliningIndicators/None.gif)
11
![](/Images/OutliningIndicators/None.gif)
12
![](/Images/OutliningIndicators/None.gif)
13
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
14
![](/Images/OutliningIndicators/InBlock.gif)
15
![](/Images/OutliningIndicators/InBlock.gif)
16
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
17
![](/Images/OutliningIndicators/None.gif)
18
![](/Images/OutliningIndicators/None.gif)
19
![](/Images/OutliningIndicators/None.gif)
20
![](/Images/OutliningIndicators/None.gif)
21
![](/Images/OutliningIndicators/None.gif)
22
![](/Images/OutliningIndicators/None.gif)
23
![](/Images/OutliningIndicators/None.gif)
24
![](/Images/OutliningIndicators/None.gif)
25
![](/Images/OutliningIndicators/None.gif)
26
![](/Images/OutliningIndicators/None.gif)
27
![](/Images/OutliningIndicators/None.gif)
28
![](/Images/OutliningIndicators/None.gif)
★值得注意的几个要点:
----------------------------------------------------------------------------------------------------
1.必须在Web应用程序的根目录下的Web.config文件的<system.web>结点内中添加:
<httpHandlers>
<add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro.2"/>
</httpHandlers>
2. 服务端必须在Page_Load中注册包含调用方法的类,并且必须保证页面每次回发时都执行注册语句。
即不能写成:
if(!IsPostBack)
{ //注册语句不能写在此处,否则页面回发后,客户端将无法访问到AjaxPro_example_Default类
AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxPro_example_Default));
}
3. 服务端只有用[AjaxPro.AjaxMethod]标记过的方法,才能被客户端调用
4. 客户端页面上必须有<form runat="server">标记,否则不能访问在服务端已注册的类
★遗憾之处:
---------------------------------------------------------------------------------------------------- 不能跨页面调用,只能在与后代cs相关联的前台页面上访问注册过的类或方法,要是可以在一处(如global文件中)注册所有需要在前台访问的对象,而前台不论是哪个位置的html或aspx页面都可以访问到注册过的对象,那将是更加的方便灵活。