9

已经部署了许多引用相同视图的报告部分,但是其中一个未能在服务器上运行,我认为这可能是由于参数到位,其中包含各种字符。这是我收到的错误消息:

有没有人对如何解决这个问题有任何建议。

Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)
Timestamp: Wed, 6 Jun 2012 08:34:05 UTC


Message: Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500
Line: 5
Char: 62099
Code: 0
URI: http://mysqlserver/Reports/ScriptResource.axd?d=XwwW1tMwtFzdBQ9-6KriOz3q0Wkgg-xPb7EWT8HUhJXnf8sz46FbnRIo5guVNx1JC-QFapCZ-oQvTRpjjwXFYypY46ebyJBSDV8_0QBsVijeeYDDkZolFtJT35QxeGTEsgsKCpzrB-ZJiu83PMYBwOjrroQ1&t=ffffffffb868b5f4
4

1 回答 1

16

此问题是由于请求长度超过一定数量而导致 SQL Server 停止正在运行的报告引起的。

解决方法如下:

找到 ReportManager 和 ReportServer 的 web.config 文件。

这些应该在这样的地方找到:

C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportManager\Web.config

C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\Web.config

找到后,您需要编辑两者的 web.config 文件并添加以下代码:

<appSettings>
<add key="aspnet:IgnoreFormActionAttribute" value="true" />
<add key="aspnet:MaxHttpCollectionKeys" value="100000" />
</appSettings>

这些应用程序设置应该添加在 /system.web 和运行时节点之间,因此它应该如下所示:

</system.web>
<appSettings>
<add key="aspnet:IgnoreFormActionAttribute" value="true" />
<add key="aspnet:MaxHttpCollectionKeys" value="100000" />
</appSettings>
<runtime> 

注意: ReportManager 可能已经有一个应用程序设置节点,因此您只需粘贴两个添加键行。

ReportServer 很可能需要所有 4 行(包括打开和关闭 appsettings 节点。

于 2012-06-08T10:53:47.417 回答