Alan Juden .NET Core Report Viewer 在本地主机上工作但不在生产环境中

Alan Juden .NET Core Report Viewer Working in localhost but not in Production

当我将项目部署到生产环境时,我正在实施 Alan Juden's MVC Report Viewer 和 运行 解决一些问题。

我已经在我的 .NET Core 应用程序中设置了报告查看器,并且在本地主机上一切正常,但是当我部署到生产环境并尝试加载报告时,我在我的页面中收到了这条消息,报告应该在该页面呈现: Report failed to load, check report parameters...

当我在“网络”选项卡下打开浏览器开发人员工具时,我可以看到 ViewReportPage 方法未找到,因此返回状态代码 404

Request URL: https://MYDOMAIN/Report/ViewReportPage/?reportPath=%2FGearUpAlumni%2FAlumniData&page=1&
Request Method: GET
Status Code: 404 Not Found
Remote Address: 
Referrer Policy: no-referrer-when-downgrade

所以问题不是报告需要一个参数(同样,在本地主机上工作正常),而是 finding ViewReportPage 方法在我的 ReportController class.

此特定方法 (ViewReportPage) 由 AlanJuden.MvcReportViewer.ReportController 实现,它在我的控制器中继承。

有人 运行 遇到过类似的问题吗?或者也许知道如何解决这个问题?

谢谢

我成功了。由于我的应用程序部署到域中的子目录,因此我需要更改 JavaScript 以包含基本路径。

所以基本上来自

$.get("Report/ViewReportPage/?reportPath=@Model.ReportPath.UrlEncode()&page=" + page + "&" + urlParams)

@{ 
    string pathBase = Context.Request.PathBase;
}
...
...
$.get("@pathBase/Report/ViewReportPage/?reportPath=@Model.ReportPath.UrlEncode()&page=" + page + "&" + urlParams)

现在报告在本地主机和生产环境中运行良好,并且正在调用正确的 URL

https://MYDOMAIN/SUBDIRECTORY/Report/ViewReportPage/reportPath=%2FGearUpAlumni%2FAlumniData&page=1&