由于asp2.0提供了异步页的支持使异步调用webservice的性能有了真正的提升。
使用异步页,首先要设置async="true",异步页是在prerender和prerendercomplete事件间加入begin,end异步方法实现的,begin和end方法属于不同的线程。
ws异步页的实现有两种方式:
1、使用等待方法实现异步
通用类,封装了ws
/**//// <summary>
/// 使用等待方法实现异步
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
private account account;
private string username;
public account account
{
get { return account; }
set { account = value; }
}
public string username
{
get { return username; }
set { username = value; }
}
public iasyncresult beginasyncgetaccount(object sender, eventargs e, asynccallback cb, object state)
{
return vb.begingetaccountbyname(username,cb,state);
}
public void endasyncgetaccount(iasyncresult ar)
{
account = vb.endgetaccountbyname(ar);
}
/**//// <summary>
/// 使用事件驱动的异步
/// </summary>
/// <param name="username"></param>
public void getaccountcompleted(object source, vb.getaccountbynamecompletedeventargs e)
{
account = e.result;
}
public void asgetaccount(string username)
{
vb.getaccountbynamecompleted += new getaccountbynamecompletedeventhandler(getaccountcompleted);
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器