我有一个SharePoint 2010 webpart,在QA服务器上5分钟后超时。 QA环境是1个Web服务器,2个app服务器和一个SQL Server。我已经尝试过一切来解决这个问题。更改了IIS超时,工作者故障,禁用ping检查,无效。这是世界上最简单的代码!!
有人可以在您的某个环境中尝试此操作吗?最好有一个组成农场的多个服务器。这段代码完全适用于我们的开发服务器,它只是一个盒子。我正在做的就是调用SPLongOperation,睡6分钟,然后结束长时间的操作。
任何人都知道我错过了什么?
代码:
protected void btnTest_Click(object sender, EventArgs e)
{
string currentUrl = SPContext.Current.Web.Url;
using (SPLongOperation operation = new SPLongOperation(this.Page))
{
operation.LeadingHTML = "Updating Reports on Selected Project Sites";
operation.TrailingHTML = "Gathering the worker threads, this could take a second. Please stand by...";
operation.Begin();
Thread.Sleep(360000);
operation.End(currentUrl, SPRedirectFlags.Default, this.Context, "");
}
SetStatus("Slept for a long time!", false);
}
有趣的是,如果我运行以下操作,我没有导航到长操作页面,它会让我重新进行身份验证,然后重定向到“Internet Explorer无法显示网页”屏幕。很奇怪。
protected void btnTest2_Click(object sender, EventArgs e)
{
SetStatus("Before Sleep", false);
Thread.Sleep(360000);
SetStatus("Sleep Successful!", false);
}