2011-02-10 63 views
1

我们已经成功地升级我们的服务器SSRS 2005年至2008年。现在,当我们打开我们的报告,该报告转换为2008年,我们可以更改设计和保存。但是当我点击预览时,我在BIDS中得到以下错误。我们错过了什么吗?SSRS 2005 SSRS TO 2008年升级

System.ArgumentNullException: No message was deserialized prior to calling the DispatchChannelSink. 
Parameter name: requestMsg 
    at System.Runtime.Remoting.Channels.DispatchChannelSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream) 
    at System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream) 
    at System.Runtime.Remoting.Channels.Http.HttpHandlerTransportSink.HandleRequest(HttpContext context) 
    at System.Runtime.Remoting.Channels.Http.HttpRemotingHandler.InternalProcessRequest(HttpContext context) 

回答

1

终于搞清楚了这个问题。当进行数据的网络嗅探BIDS的客户和我们的应用服务器之间交换的跟踪报道,内容类型为文本/ XML ...但是我们使用的客户端服务器通信的二进制格式,所以应该不会有文本/ xml和本来应该只是一个HTTP POST与八位字节流内容类型。

因为BIDS作为一个单独的进程运行,所以在应用程序文件夹中找不到配置文件,因此远程处理使用的是SOAP格式化程序的默认设置 - 因此文本/ xml内容类型和结果错误。

因此,我们需要一个二进制格式化程序,我们通过将配置文件复制到与BIDS exe相同的文件夹中(在我的系统上,路径为:C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ Common7 \ IDE中的预览,然后开始工作。