使用WebRequest对SQL Reportserver 2008进行身份验证

时间:2015-07-08 18:48:40

标签: sql asp.net sql-server authentication reporting-services

我正在尝试将SQL报告从SQL 2008报告服务器下载到我的MVC控制器,但它验证失败。当我在我的浏览器中粘贴网址时,我可以成功导航到该页面,但是当我尝试在代码中执行此操作时,我收到401 Unauthorized错误。代码如下

        var networkCredential = new NetworkCredential(userName, password)

        var baseURL = ConfigurationManager.AppSettings["ReportServer"] + "/ReportServer/Pages/ReportViewer.aspx";

        WebRequest myWebRequest = WebRequest.Create(baseURL);
        myWebRequest.Credentials = networkCredential;

        WebResponse myWebResponse = myWebRequest.GetResponse();
        myWebResponse.Close();

1 个答案:

答案 0 :(得分:0)

如果您想从应用程序生成报告,我建议您使用ReportServer Web Service

您会对Render method感兴趣。

文档中提供了一个代码示例,用于添加自定义身份验证信息,只需更改行:

rs.Credentials = System.Net.CredentialCache.DefaultCredentials;

rs.Credentials = new NetworkCredential(userName, password);