internal DataSourceInfo GetByName(string name, ICatalogItemContext report) { if (m_collectionByReport != null) { DataSourceInfoCollection dataSourceInfoCollection = (DataSourceInfoCollection)m_collectionByReport[report.StableItemPath]; if (dataSourceInfoCollection != null) { return(dataSourceInfoCollection.GetByOriginalName(name)); } } return(null); }
public DataSourceInfoCollection CombineOnSetDataSources(DataSourceInfoCollection newDataSources) { DataSourceInfoCollection dataSourceInfoCollection = new DataSourceInfoCollection(); foreach (DataSourceInfo newDataSource in newDataSources) { DataSourceInfo byOriginalName = GetByOriginalName(newDataSource.OriginalName); if (byOriginalName == null) { throw new DataSourceNotFoundException(newDataSource.OriginalName); } newDataSource.ID = byOriginalName.ID; newDataSource.SetOriginalConnectionString(byOriginalName.OriginalConnectionStringEncrypted); newDataSource.SetOriginalConnectStringExpressionBased(byOriginalName.OriginalConnectStringExpressionBased); dataSourceInfoCollection.Add(newDataSource); } IEnumerator enumerator = GetEnumerator(); try { while (enumerator.MoveNext()) { DataSourceInfo dataSourceInfo2 = (DataSourceInfo)enumerator.Current; if (newDataSources.GetByOriginalName(dataSourceInfo2.OriginalName) == null) { dataSourceInfoCollection.Add(dataSourceInfo2); } } return(dataSourceInfoCollection); } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } }