第 5 课:将报表定义发布到报表服务器
更新报表定义的最后一步是将其发布回报表服务器。
将报表发布到报表目录
用以下代码替换 Program.cs 文件(对于 Visual Basic,为 Module1.vb)中 PublishReportDefinition() 方法的代码:
private void PublishReportDefinition() { System.Console.WriteLine("Publishing Report Definition"); string reportPath = "/AdventureWorks 2008 Sample Reports/Company Sales 2008"; XmlSerializer serializer = new XmlSerializer(typeof(Report)); using (MemoryStream stream = new MemoryStream()) { // Serialize the report into the MemoryStream serializer.Serialize(stream, _report); stream.Position = 0; byte[] bytes = stream.ToArray(); // Update the report on the report server Warning[] warnings = _reportService.SetItemDefinition(reportPath, bytes, null); } }
Private Sub PublishReportDefinition() System.Console.WriteLine("Publishing Report Definition") Dim reportPath As String = _ "/AdventureWorks 2008 Sample Reports/Company Sales 2008" Dim serializer As XmlSerializer = _ New XmlSerializer(GetType(Report)) Using stream As MemoryStream = New MemoryStream 'Serialize the report into the MemoryStream serializer.Serialize(stream, m_report) stream.Position = 0 'Update the report on the report server Dim bytes As Byte() = stream.ToArray Dim warnings As Warning() = _ m_reportService.SetItemDefinition(reportPath, bytes, Nothing) End Using End Sub