Asp.net mvc SSRS和渲染与流信息

Asp.net mvc SSRS和渲染与流信息,asp.net-mvc,reporting-services,ssrs-2008,Asp.net Mvc,Reporting Services,Ssrs 2008,我正在将一个web表单应用程序移植到mvc。forms应用程序大量使用了ReportViewer控件,但在mvc环境中扩展得并不好。我从零开始。没有自定义呈现程序,我无法可靠复制的唯一属性是页面计数和总页面计数。如何使用ReportExecution获取这些值?我真的很犹豫是否要在自定义渲染器上投入时间/资源。我唯一能想到并且不喜欢的就是设置DeviceInfo.Section,并在异常不在范围内时捕获异常。报告以HTML40格式呈现。继续使用嵌入在.aspx页面中的ReportViewer控件

我正在将一个web表单应用程序移植到mvc。forms应用程序大量使用了ReportViewer控件,但在mvc环境中扩展得并不好。我从零开始。没有自定义呈现程序,我无法可靠复制的唯一属性是页面计数和总页面计数。如何使用ReportExecution获取这些值?我真的很犹豫是否要在自定义渲染器上投入时间/资源。我唯一能想到并且不喜欢的就是设置DeviceInfo.Section,并在异常不在范围内时捕获异常。报告以HTML40格式呈现。

继续使用嵌入在.aspx页面中的ReportViewer控件,并创建指向此页面的MVC路由:

routes.MapPageRoute(
          "Reports",
          "Reports/{folder}/{name}",
          "~/Reports/default.aspx",
          false,
          new RouteValueDictionary(
              new { folder = "", name = "", controller = "", action = "" }),

          new RouteValueDictionary(
              new { constraint = new ReportConstraint() })
          );

我很想知道你为什么从零开始。这是一个挑战。我有一个基本视图,可以将报告作为html注入。我使用razor@RenderSections将派生报告参数从基本视图渲染到派生视图(BaseView->DerivedView)。在Ajax回发中,我调用了一个控制器方法来计算参数并发回url。在基类中,我捕获该url并使用format选项将其加载到div中或作为文件输出。捕获参数更改并计算用于呈现的url是一个三跳过程:(我将html | pdf | excel发送到最终呈现方法以返回文件或html。感谢您的回答。我应该声明我正在尝试在部分视图中呈现报告,其中报告内容url以异步方式发回,html元素从该url馈送。恐怕这不能与reportviewer重复?