5

我的项目的架构是 3 层,基本上:

(1)ASP.NET MVC --> (2) Reporting Service --> (3) 使用存储过程的数据库

在第 (2) 层中,我使用 Report Viewer 控件来支持第 (1) 层向最终用户显示数据表。该层中的所有材料都在 *.rdl 文件下。因此,报告服务通过自己的控件帮助第 (1) 层。在层(1)中,只需使用:

 Microsoft.Reporting.WebForms.ReportViewer rvwReportViewer;
rvwReportViewer.ServerReport.SetParameters(reportParameter);

然后数据表将显示在reportParameter中

但是,我希望第 (1) 层可以自行获取和管理 RAW DATA,但始终确保它仍然通过报告服务(第 (2) 层)连接到数据库(第 (3) 层)。不再需要 layer(2) 的报告控件的支持,但必须参与架构

换句话说,第(2)层从第(3)层请求和检索数据,第(1)层也可以从第(2)层获取数据,然后解析该数据并自行显示。

谁能告诉我任何解决方案?任何帮助,将不胜感激。感谢先进。

4

1 回答 1

1

我想这是可能的,但我不清楚你为什么要在这种情况下保留 SSRS?不要认为这是一个XY 问题?有一件事是肯定的:这不是一个典型的设置,所以要确保收益是值得的。(对于您来说,对于第 2 层来说,ORM 或数据服务不是更好的选择吗?)

但是,如果您坚持,您想要的就是可能的。已执行报表的输出始终以一种或另一种格式呈现。一种可能适合您情况的设置是让您的 MVC 代码连接到SSRS Web 服务 API并将报告导出为适合您在第 1 层中的处理任务的格式:可能是 XML 或 CSV。

于 2012-12-13T12:59:43.413 回答