我试图将给定的RDL报告设置为使用客户端应用程序使用嵌入式数据源。我正在使用ReportingService2005类与SSRS进行交互。我需要将嵌入式数据源设置为使用“安全存储在报表服务器中的凭据”,并指定用户名和密码。
谢谢!
最佳答案
我先发布了RDL,然后调用ReportingService2005 GetItemDataSources()方法解决了该问题。然后,我修改了该数据源,随后调用了SetItemDataSources()将更改保存到SSRS中。以下是我使用以下代码完成的代码片段:
var reportItem = report.TargetFolder + "/" + report.Name;
var dataSources = new DataSource[0];
dataSources = rs.GetItemDataSources(reportItem);
if (dataSources.Any())
{
var dataSource = (DataSourceDefinition)dataSources.First().Item;
dataSource.CredentialRetrieval = CredentialRetrievalEnum.Store;
dataSource.UserName = SsrsUsername;
dataSource.Password = SsrsPassword;
rs.SetItemDataSources(reportItem, dataSources);
}