从任何给定的 URL 获取 ssrs Web 服务

本文关键字:获取 ssrs Web 服务 URL 任何 | 更新日期: 2023-09-27 18:33:34

因此,我无法在我的项目中引用任何特定的 SSRS Web 服务,因为我希望用户能够将其指向自己的报表服务器。 我有什么办法可以做到这一点吗?

具体来说,我需要能够(至少)获取可用的报告、查看报告和安排报告。 我还没有通过 c# 接触过报表计划,但通过参考我的本地报表服务,报表选择/查看非常简单。 有没有办法为任何给定的报告服务动态加载 Web 服务 - 假设我知道 url 或服务器和实例名称?

        var rs = new ReportingService2005
            {
                Credentials = System.Net.CredentialCache.DefaultCredentials
            };
        // get catalog items from the report server database
        CatalogItem[] items = rs.ListChildren("/", true);
        // add each report to the combobox
        foreach (CatalogItem ci in items)
        {
            if (ci.Type == ItemTypeEnum.Report)
                comboBox1.Items.Add(ci.Path);
        }

这就是我目前正在做的,以提取可用的报告。 但是,如上文所述,它直接引用我自己的报表服务器。 ReportingService2005(我命名为对我的.asmx Web服务的引用)是我希望能够动态加载的内容。

从任何给定的 URL 获取 ssrs Web 服务

绝对有可能。报告服务具有您可以分配.Url属性。所以你可以做到:

rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
rs.Url = "http://<Server Name>/reportserver/ReportService2005.asmx";

参考:"设置 Web 服务的 url 属性"