0

我在 SSRS 服务器上有一个报告的 URL,该 URL 包含:

http://<**ServerAdress**>/<**ServerName**>/Pages/ReportViewer.aspx?<**reportPath**>&<**report_Parameters**>

以编程方式(使用 C#)我想在不打开浏览器的情况下执行 url。当我使用ReportExecutionService时,我必须手动定义参数(使用ParameterValue[]...)我不知道如何从 url 调用它们。那么,有没有一种方法可以在不打开浏览器的情况下使用 url 执行报告?

4

1 回答 1

0

您可以使用 C# 以编程方式调用 URL:

    public static async Task<bool> CallUrl(string url)
    {
        try
        {
            var client = new HttpClient();

            client.DefaultRequestHeaders.TryAddWithoutValidation("Accept",
                "text/html,application/xhtml+xml,application/xml");
            client.DefaultRequestHeaders.TryAddWithoutValidation("Accept-Encoding", "gzip, deflate");
            client.DefaultRequestHeaders.TryAddWithoutValidation("User-Agent",
                "Mozilla/5.0 (Windows NT 6.2; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0");
            client.DefaultRequestHeaders.TryAddWithoutValidation("Accept-Charset", "ISO-8859-1");

            var response = await client.GetAsync(url);
            response.EnsureSuccessStatusCode();

            return true;
        }
        catch
        {
            return false;
        }
    }

调用该方法的示例:

        var result = CallUrl("http://www.bbc.co.uk");
        result.Wait();
        Console.WriteLine(result.Result);

这应该运行您的报告,而无需打开浏览器。

于 2016-10-27T13:46:04.103 回答