2010-06-02 70 views
1

我試圖直接從代碼生成報告(通過郵件發送)。我在一個Windows服務中做這個。Reporting Services 2008:ReportExecution2005.asmx不存在

因此,這裏是我在做什麼:

Dim rview As New ReportViewer() 

Dim reportServerAddress As String = "http://server/Reports_client" 
rview.ServerReport.ReportServerUrl = New Uri(reportServerAddress) 

Dim paramList As New List(Of Microsoft.Reporting.WinForms.ReportParameter) 
paramList.Add(New Microsoft.Reporting.WinForms.ReportParameter("param1", t.Value)) 
paramList.Add(New Microsoft.Reporting.WinForms.ReportParameter("CurrentDate", Date.Now)) 

Dim reportsDirectory As String = "AppName.Reports" 
Dim reportPath As String = String.Format("/{0}/{1}", reportsDirectory, reportName) 

rview.ServerReport.ReportPath = reportPath 
rview.ServerReport.SetParameters(paramList) 'This is where I get the exception 

Dim mimeType, encoding, extension, deviceInfo As String 
Dim streamids As String() 
Dim warnings As Microsoft.Reporting.WinForms.Warning() 

deviceInfo = "<DeviceInfo><SimplePageHeaders>True</SimplePageHeaders></DeviceInfo>" 

Dim format As String = "PDF" 

Dim bytes As Byte() = rview.ServerReport.Render(format, deviceInfo, mimeType, encoding, extension, streamids, warnings) 

當調試這段代碼,我可以看到它拋出一個MissingEndpointException,我讓SetParameters(paramList)此消息:

的企圖連接到報告 服務器失敗。請檢查您的連接 信息並確保報告服務器 是兼容版本。

展望在服務器的日誌文件,我可以看到這一點:

UI ReportManager_0-8 878 6月2日/ 2010-11:!!!34:36 :: 未處理的異常: System.Web.HttpException:文件 '/Reports_client/ReportExecution2005.asmx' 不存在。在 System.Web.UI.Util.CheckVirtualFileExists(VirtualPath virtualPath)在 System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath,布爾noBuild,布爾 allowCrossApp,布爾 allowBuildInPrecompile)在 System.Web.Compilation .BuildManager.GetVPathBuildResultWithNoAssert(HttpContext的 上下文,virtualPath virtualPath, 布爾noBuild,布爾 allowCrossApp,布爾 allowBuildInPrecompile)在 System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext的 上下文,virtualPath virtualPath, 布爾noBuild,布爾 allowCrossApp,布爾 allowBuildInPrecompile)在 System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext的 上下文,VirtualPath virtualPath)
在 System.Web.UI.WebServiceParser.GetCompiledType(字符串 INPUTFILE,HttpContext的上下文)在 系統.Web.Services.Protocols.WebServiceHandlerFactory.GetHandler(HttpContext的 上下文,字符串動詞,字符串URL, 字符串文件路徑)在 System.Web.HttpApplication.MapHttpHandler(HttpContext的 上下文中,字符串的RequestType, VirtualPath路徑,字符串 pathTranslated,布爾useAppConfig) 在 System.Web.HttpApplication.MapHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep 步驟,布爾& completedSynchronously)

我沒有」在網上找到適合我的問題的資源。有人有線索嗎 ?我可以從Web應用程序查看報告,所以我確定服務器正在運行。

在此先感謝。

回答

5

沒關係,我與服務器名稱混淆......

而不是使用

http://server/Reports_client

的,我只需要使用

http://server/ReportServer_client

相關問題