public void CanRead2016Report() { var xml = @"<?xml version=""1.0"" encoding=""utf-8""?> <Report xmlns=""http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition"" xmlns:rd=""http://schemas.microsoft.com/SQLServer/reporting/reportdesigner""> </Report>"; var report = new SsrsObjectFileReader().ReadXml(XDocument.Parse(xml), "Test", new SsrsObjectPath("Test")); Assert.That(report, Is.InstanceOf <SsrsReport>()); }
public void CanRead2016DataSet() { var xml = @"<?xml version=""1.0"" encoding=""utf-8""?> <SharedDataSet xmlns:rd=""http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"" xmlns=""http://schemas.microsoft.com/sqlserver/reporting/2016/01/shareddatasetdefinition""> <DataSet Name=""""> <Query> <DataSourceReference>DataSourceName</DataSourceReference> </Query> </DataSet> </SharedDataSet>"; var report = new SsrsObjectFileReader().ReadXml(XDocument.Parse(xml), "Test", new SsrsObjectPath("Test")); Assert.That(report, Is.InstanceOf <SsrsDataSet>()); }
private IEnumerable <SsrsObject> MapEntriesToSsrsObjects(ZipArchiveEntry[] items, SsrsObjectFilter filter) { var siteFilter = GetSiteFilter(filter.Site); foreach (var item in items) { var containerPath = basePath + SsrsObjectPath.FromFileSystemPath(Path.GetDirectoryName(item.FullName)); using (var stream = item.Open()) { var ssrsObject = new SsrsObjectFileReader().Read(stream, Path.GetFileNameWithoutExtension(item.Name), containerPath); if (filter.Excludes(ssrsObject)) { continue; } if (siteFilter?.Matches(ssrsObject.Path) == false) { continue; } yield return(ssrsObject); } } }