我刚刚在报表服务器上部署了我的第一个 SSRS 报表,并使用 ReportViewer 从应用程序中调用它(必须使用它)。问题是,它总是在执行报告之前询问数据库用户名和密码。无论我在哪里设置数据库凭据(在报表服务器上,在报表中),它总是要求我提供它们。所以我尝试像这样以编程方式设置数据源凭据:
DataSourceCredentials cred = new DataSourceCredentials();
ReportDataSourceInfoCollection dataSource = ReportViewer1.ServerReport.GetDataSources();
cred.Name = dataSource.First().Name;
cred.UserId = "sa";
cred.Password = "admin_pass";
ReportViewer1.ServerReport.SetDataSourceCredentials(new DataSourceCredentials[] { cred });
ReportViewer1.ServerReport.Refresh();
并且报告的第一页加载得很好。不幸的是,第二页再次要求提供凭据,如果我不再键入它们,报告查看器会显示一个错误,例如 dataSource 不存在:
无法创建到数据源“DataSource2”的连接。(rsErrorOpeningConnection)
有人有这个问题吗?如何解决?谢谢!