SSRS的Asp .Net核心下载报告

问题描述 投票:0回答:1

我一直在努力从SSRS获取报告,但是.Net Core似乎不支持该报告。所以我想知道是否有一种方法可以仅在带有参数的Asp .Net Core中的浏览器上下载报告?我所需要的只是下载它,而无需使用报告视图预览它,因为这没有兼容性。

用户单击按钮,并且参数通过控制器或剃须刀页面发送,只需要一种获取报告并在浏览器上下载的方法

reporting-services ssrs-2012 asp.net-core-2.2
1个回答
0
投票

根据Microsoft documentation,您需要首先根据您的ssrs报告和参数生成url,如下所示...

https://servername/ReportServer_THESQLINSTANCE/Pages/ReportViewer.aspx?%2freportfolder%2freport+name+with+spaces&rs:Format=pdf

然后将此URL传递到以下Controller Action ....

    public IActionResult GetReportingData(string url)
    {
        try
        {                
            url = url.Replace("\n", "");
            WebRequest request = WebRequest.Create(url);           

            NetworkCredential credentials = new NetworkCredential(@"**UserName*", "***Password***");
            request.Credentials = credentials;

            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            Stream stream = response.GetResponseStream();

            return File(stream, "application/pdf");

        }
        catch (Exception ex)
        {
            return BadRequest(ex.Message);
        }
    }

此操作将根据需要返回/下载pdf文件。

© www.soinside.com 2019 - 2024. All rights reserved.