private static string CreateUrl(Report report, string instanceID, bool isResourceStreamRoot, string iterationId) { string str = isResourceStreamRoot ? "ResourceStreamID" : "StreamID"; //UriBuilder handlerUri = ReportViewerFactory.HttpHandler.HandlerUri; string str2 = ReportDataOperation.BaseQuery(report, instanceID) + "&OpType=ReportImage&"; if (!isResourceStreamRoot) { if (iterationId == null) { iterationId = Guid.NewGuid().ToString("N"); } str2 = str2 + "IterationId=" + HttpUtility.UrlEncode(iterationId) + "&"; } str2 = (str2 + str + "="); return(str2); }
private void SendPrintStream(Stream stream, HttpResponse response) { int value = 0; if (stream != null) { value = (int)stream.Length; } byte[] bytes = BitConverter.GetBytes(value); foreach (byte value2 in bytes) { //response.OutputStream.WriteByte(value2); } if (stream != null) { stream.Position = 0L; ReportDataOperation.StreamToResponse(stream, response); //response.Flush(); } }
public override void RenderReportForPrint(string deviceInfo, NameValueCollection additonalParams, HttpResponse response) { MemoryStream lastMemoryStream = null; ReportDataOperation.SetStreamingHeaders(null, response); Warning[] array = default(Warning[]); this.m_localReport.Render("IMAGE", deviceInfo, (CreateStreamCallback) delegate { if (lastMemoryStream != null) { this.SendPrintStream(lastMemoryStream, response); lastMemoryStream.Dispose(); lastMemoryStream = null; } lastMemoryStream = new MemoryStream(); return(lastMemoryStream); }, out array); this.SendPrintStream(lastMemoryStream, response); lastMemoryStream.Dispose(); this.SendPrintStream(null, response); }
public static void StreamToResponse(Stream data, string mimeType, HttpResponse response) { ReportDataOperation.SetStreamingHeaders(mimeType, response); ReportDataOperation.StreamToResponse(data, response); }
public static string CreateQuery(Report report, string instanceID) { return(ReportDataOperation.BaseQuery(report, instanceID) + "&OpType=PrintRequest"); }