SSRS交互式排序在渲染的HTML中

时间:2015-08-25 18:35:56

标签: sorting reporting-services asp.net-mvc-5 ssrs-2014

我有一个简单的报告,显示部门编号和部门名称,并在Tablix中的这两个列标题上启用了交互式排序。

我通过MVC5应用程序的URL访问来访问此报告。该报告正在以标准html4.0正确呈现。我可以在我的页面中看到报告html,其中包含标题中的排序图标。但是,单击任一列标题,我会收到来自rsReportNotReady的SSRS的错误页面。

如果我自己通过URL访问直接浏览报告,交互式排序工作正常,但不能作为原始html流式传输到mvc视图。

通过网址访问将报告呈现为html的代码:

    private string GetReportData(string requestUri)
    {
        string reportData = string.Empty;
        HttpWebRequest request = (HttpWebRequest) WebRequest.Create(requestUri);
        request.Credentials = CredentialCache.DefaultNetworkCredentials;
        HttpWebResponse response = (HttpWebResponse) request.GetResponse();
        if (response.StatusCode == HttpStatusCode.OK)
        {
            Stream receiveStream = response.GetResponseStream();
            if (receiveStream != null)
            {
                StreamReader readStream = response.CharacterSet == null
                    ? new StreamReader(receiveStream)
                    : new StreamReader(receiveStream, Encoding.GetEncoding(response.CharacterSet));
                reportData = readStream.ReadToEnd();
                response.Close();
                readStream.Close();
            }
        }
        return reportData;
    }

访问报告http://myreportservername/ReportServer?/EmployeeReports/rptDepartments&rc:Toolbar=False&rc:HTMLFragment=False&rs:Format=HTML4.0

的示例网址

rendered department report directly 通过网址访问报告

rendered in mvc app as html stream 在mvc app中呈现的报告

error from sorting in mvc app 通过mvc app排序的错误

有没有人有任何洞察力通过URL访问在MVC应用程序中对SSRS报告进行交互式排序?不,我也不能使用ReportViewer控件。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我不再需要这个解决了。我们试图做的不是最好的方式,也不是容易实现的。最终,我们转而使用来自https://www.amcharts.com/的amcharts来动态构建图表,并具有完全的交互性。