如何实现asp.net页面gui和myscript的并行工作

如何实现asp.net页面gui和myscript的并行工作,asp.net,ajax,asynchronous,Asp.net,Ajax,Asynchronous,我读了很多关于这方面的问题和教程,但只有一个被执行了,而且没有正常工作。 我有一个函数可以从其他站点搜索信息,这是一项繁重的任务,所以当我把它放到页面加载时,直到搜索脚本完成,页面才显示出来。我想用ajax或异步任务动态加载scrobbled信息。我唯一发现并执行的是 protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender,

我读了很多关于这方面的问题和教程,但只有一个被执行了,而且没有正常工作。 我有一个函数可以从其他站点搜索信息,这是一项繁重的任务,所以当我把它放到页面加载时,直到搜索脚本完成,页面才显示出来。我想用ajax或异步任务动态加载scrobbled信息。我唯一发现并执行的是

 protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        PhoneBaseC pbc = new PhoneBaseC(text);

        PageAsyncTask asyncTask1 = new PageAsyncTask(pbc.OnBegin, pbc.OnEnd, pbc.OnTimeout, "Async1", true);
        Page.RegisterAsyncTask(asyncTask1);
        Page.ExecuteRegisteredAsyncTasks();

        text.InnerHtml = pbc.GetAsyncTaskProgress() + "<br />";
    }
受保护的无效页面加载(对象发送方,事件参数e)
{
}
受保护的无效按钮1\u单击(对象发送者,事件参数e)
{
PhoneBaseC pbc=新的PhoneBaseC(文本);
PageAsyncTask asyncTask1=新的PageAsyncTask(pbc.OnBegin、pbc.OnEnd、pbc.OnTimeout,“Async1”,true);
Page.RegisterAsyncTask(异步任务1);
Page.ExecuteRegisteredAsyncTasks();
text.InnerHtml=pbc.GetAsyncTaskProgress()+“
”; }
但当我按下按钮时,所有页面都被冻结,当任务完成时,进度消息(如“已开始”、“已完成”)一起显示

我需要将gui的工作和我的任务并行,可能需要进程完成的progresbar。 很久以前我在php中使用ajax,但我对asp.net还很陌生

顺便说一句,这对我来说很奇怪。如果我对“Page.ExecuteRegisteredAsyncTasks();”行进行注释,则任务仍在执行


很抱歉,如果同样的问题已经得到了回答,我没有找到简单的例子,而且我发现的那些没有编译给我,原因很多,我不明白。很抱歉英语不好。

您可以将工作卸载到Signal R hub上,并在任务完成后更新客户端。请参见Nuget中的Signal R。很多关于如何实现长时间运行任务和客户端更新的在线教程只是在google中键入signalr教程