Sharepoint Web部件,服务器上的异步处理

时间:2011-09-02 15:07:57

标签: sharepoint asynchronous web-parts

我正在开发一个Web部件,它必须解析服务器端的文件列表并输出报告。问题是这种操作可能会持续很长时间。

我决定在一个单独的线程中处理文件,并在结果解析时加载带有“加载....”等消息的Web部件内容,事件将被触发并且内容将更新网页部分。

我找到了很多帖子,其中包含以下解决方案

问题是我在我的解决方案中没有.aspx文件,我可以在其中调整Async="true"指令中的@Page参数。

有没有人知道这个文件在哪里或者如何添加它以便由Web部分进行核心处理。

P.S。我尝试使用BackgroundWorker执行任务,但它出现与Page.RegisterAsyncTask相同的错误。错误是:“在此上下文中不允许异步操作。启动异步操作的页面必须将Async属性设置为true,并且只能在PreRenderComplete事件之前的页面上启动异步操作。” EM>

1 个答案:

答案 0 :(得分:0)

WebParts可以异步/多线程运行。通过Page.RegisterAsyncTask注册相应的事件处理程序。您将指定应异步调用的方法,以及处理完成后控件将返回的回调方法。

http://daniellarson.wordpress.com/2006/06/26/asynchronous-webparts-in-asp-net-2-0/

http://daniellarson.wordpress.com/2006/07/16/asynchrounous-asp-net-webparts-for-sharepointmoss/