ReportService2010.asmx ListChildren() 超时异常

ReportService2010.asmx ListChildren() Timeout exception

我在我的一个 exe 中添加了对 SSRS 网络服务的引用 - http://servername/ReportService2010.asmx

当调用 ListChildren()Recursive = false

var reportService = new ReportingService2010
{
    Credentials = CredentialCache.DefaultCredentials,
    Url = "http://servername/ReportService2010.asmx"
};

...

var children = reportService.ListChildren(parentFolderPath, false);

抛出以下异常 -

System.Net.WebException: The operation has timed out
   at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at DeploySSRSreports.ReportService2010.ReportingService2010.ListChildren(String ItemPath, Boolean Recursive)

能否请指导导致此错误的可能原因是什么?

仅供参考, reportService.Timeout 的默认值为 100000 毫秒,这对我来说很合理。
此外,上面的代码在 DEV 环境中运行良好,但在 QA 中失败。

谢谢!

问题的发生是因为 运行 SSRS 服务器速度慢。 我们 运行 exe 在不同的时间和问题得到解决。

如果您遇到同样的问题,您可以通过-

解决这个问题
  • 正在执行 SSRS 服务器或关联的 windows 服务重启,如果是的话 可能的。就我而言,这是不可能的,因为我们的 SSRS 服务器是 也是一个数据库服务器,可满足许多其他项目数据库的需求。
  • 增加 SSRS 服务调用的超时时间。这肯定会解决问题。

HTH.