当前位置:  开发笔记 > 编程语言 > 正文

ASP.NET 2.0异步用户控件不起作用

如何解决《ASP.NET2.0异步用户控件不起作用》经验,为你挑选了1个好方法。

我试图让用户控件异步工作,但无论我做什么,它都会继续同步工作.作为一个测试Web应用程序,我已经将它剥离到最低限度.这将是用户控件:

<%@ Control Language="C#" %>


这将是我主持控件三次的页面:

<%@ page language="C#" trace="true" async="true" asynctimeout="60" %>
<%@ register tagprefix="uc" tagname="mycontrol" src="~/MyControl.ascx" %>

    
        

页面显示没有错误,但页面底部的跟踪显示每个控件实例是同步处理的.我究竟做错了什么?我缺少哪个配置设置?



1> Charles..:

看起来我可以回答我自己的问题.用户控件不应该调用Page.ExecuteRegisteredAsyncTasks.通过这样做,控件添加了异步任务,运行它,并等待它完成.

相反,用户控件的每个实例都应该只调用Page.RegisterAsyncTask.在每个控件实例完成此操作后,页面会自动调用同时RegistereAsyncTask运行所有三个已注册的异步任务.

所以这是新的用户控件:

<%@ Control Language="C#" %>


并且创建三个控件实例的未更改页面:

<%@ page language="C#" async="true" trace="true" %>
<%@ register tagprefix="uc" tagname="mycontrol" src="~/MyControl.ascx" %>

    
        

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有