C# SSRS-找不到404页

C# SSRS-找不到404页,c#,asp.net,ssrs-2008,reporting-services,C#,Asp.net,Ssrs 2008,Reporting Services,我有一台windows 2008服务器,在SQL 2008上运行SSRS。它也是一个安装了Plesk的web服务器 我已经在开发服务器上为此服务器开发报告一段时间了。在开发服务器上一切正常。但我尝试将报告移动到live server,结果出现以下错误: 服务器错误 404-找不到文件或目录。 您正在查找的资源可能已被删除、名称已更改或暂时不可用 我不知道为什么会发生这种情况,因为当我自己访问报告URL时,它工作正常。但是,当我在托管在同一台服务器上的web应用程序中调用报表时,我就收到了这个错误

我有一台windows 2008服务器,在SQL 2008上运行SSRS。它也是一个安装了Plesk的web服务器

我已经在开发服务器上为此服务器开发报告一段时间了。在开发服务器上一切正常。但我尝试将报告移动到live server,结果出现以下错误:

服务器错误

404-找不到文件或目录。 您正在查找的资源可能已被删除、名称已更改或暂时不可用

我不知道为什么会发生这种情况,因为当我自己访问报告URL时,它工作正常。但是,当我在托管在同一台服务器上的web应用程序中调用报表时,我就收到了这个错误。我的应用程序是用c#和asp.net编写的。下面是我用来访问报告的一段代码。如有任何帮助,将不胜感激:

        string ExpId1 = Convert.ToString(Request.QueryString["Id"]).Trim();
        string ExpId2 = ExpId1.Replace("@", "+");
        Int32 ExpId3 = Convert.ToInt32(qsc.decryptQueryString(ExpId2));
        string id=ExpId3.ToString();
        ReportViewer1.Width = 1050;
        ReportViewer1.Height = 600;
        ReportViewer1.Style.Add("Overflow", "Scroll");
        ReportViewer1.ProcessingMode = ProcessingMode.Remote;
        IReportServerCredentials irsc = new CustomReportCredentials("user", "password", "server");
        ReportViewer1.ServerReport.ReportServerCredentials = irsc;
        ReportParameter[] para = new ReportParameter[2];
        para[0] = new ReportParameter();
        para[0].Name = "ExpHearderId";
        para[0].Values.Add(id);//any value

        para[1] = new ReportParameter();
        para[1].Name = "ExpHeadreId";
        para[1].Values.Add(id);//any value


        ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://xxx.xxx.xxx.xxx/reportserver_TGO");
        string path=Server.MapPath("~/ReportingofUsers/ExpenseClaimReport");
        ReportViewer1.ServerReport.ReportPath = path;
        ReportViewer1.ServerReport.SetParameters(para);
        ReportViewer1.ShowParameterPrompts = false;
        ReportViewer1.ServerReport.Refresh();
        ReportViewer1.Visible = true;
这将有助于:


编辑:还有一件事。我很确定,当您使用Reports Server时,不应该使用
Server.MapPath
。只需指定您在Reports Server中看到的路径,在您的示例中:
/ReportingofUsers/ExpenseClaimReport
。这是假设您将报告发布到服务器。

我以前尝试过使用该路径。那是行不通的。但我会把它换回来。你提供的链接也没有为我修复它。无论如何,谢谢……嗯,大约两周前我遇到了同样的问题,添加这个处理程序解决了这个问题。可能尝试在IIS中重新启动应用程序池?我将尝试。我可以使用服务器上部署的报表url从本地系统访问此报表。但是我把它放在我的应用程序中,然后尝试访问它,就像我得到错误一样。。。