最佳浏览器控制查看SSRS报告

本文关键字:SSRS 报告 浏览器 控制 最佳 | 更新日期: 2023-09-27 18:12:15

我正在做一个c#桌面项目,其中一个模块用于显示SSRS报告。

流程如下:用户按下按钮>呈现一个表单以输入描述&一个URL。然后将这两个值写入文本文件。然后用户按下第二个按钮,一个带有WebKit的新表单打开。网络浏览器。在页面的顶部是一个包含描述的下拉菜单,用户选择描述并按ok。-然后导航到与该描述相关的url。

这些都适用于http://www.google.com

等网站

但是,当我输入SSRS Report Manager URL时,它就失效了。-IE)它不再导航,没有错误,什么都没有。只是一个空白页。

我的SSRS URL是:http://server:8080/Reports_SQLEXPRESS/Pages/Folder.aspx

我理解Webkit。Net是一个chrome包装器,所以我在chrome中测试了我的报告管理器,它工作得很好。(我承认有一些有限的功能,但对于我需要做的已经足够了。)

我也尝试过使用Visual Studio中包含的默认WebBrowser控件-这是有效的,但是当我去下载PDF报告时,我得到一个脚本错误,因为URL:

Http://username:password@UrlGoesHere

然而,这是我可以通过程序访问报表服务器的唯一方法,因为它使用当前用户的Windows凭据。-将使用我的应用程序的用户无法访问报告管理器,因此需要我的url包含我的凭据。

是否有一个合适的包装,我可以使用的SSRS?我需要能够运行报告,限制导航只到加载的URL,并有能力下载报告。-我没有能力自己写。

    private void button1_Click(object sender, EventArgs e)
    {
        Address = comboBox1.SelectedValue.ToString();
        MessageBox.Show(Address);
        this.webKitBrowser1.Url = new System.Uri(Address, System.UriKind.Absolute);
    }

我也试过使用:WebBrowser1.Navigate();函数-它仍然没有加载报表服务器页面

最佳浏览器控制查看SSRS报告

好吧,看起来最好的东西毕竟不是浏览器!

对于那些与我有类似问题的人:ReportViewer是答案!

它是VS中预先包含的控件,(但是你可能需要将程序集更新到版本11,或者该控件将出于某些奇怪的原因作为组件添加…关于如何这样做的详细信息可以在这里找到)

此控件与SQL报表管理器中使用的报表查看器完全相同。另外,您可以设置凭据,而不必担心用户看到它们!