Изначально я пытался выяснить, в чем разница между Response.Close и Response.End, но после более продолжительного поиска в Google и анализа стало ясно, что я не видел распространенного способа, которым Байт [] отправляется обратно клиент. Я оставлю пример кода ниже, но я хотел бы знать, каков промышленный стандарт для этого.
Byte[] myBytes = GetReportBytes();
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.AppendHeader("content-length", myBytes.Length.ToString());
HttpContext.Current.Response.AppendHeader("content-Disposition", "attachment;filename=" + this.ReportFileName + GetReportExtension());
HttpContext.Current.Response.ContentType = GetApplicationContentType();
HttpContext.Current.Response.BinaryWrite(myBytes);
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.Close();
//CERT FIX
//HttpContext.Current.Response.End();