/// <summary> /// Default values and controls are loaded on page. /// </summary> /// <param name="sender">Object Sender is a parameter called Sender that contains a reference to the control/object that raised the event.</param> /// <param name="e">EventArgs is a parameter called e that contains the event data</param> protected void Page_Load(object sender, EventArgs e) { try { string rowJsonText = Server.UrlDecode(Request.Form[Constants.HTTP_CONTENT]); string jsonText = rowJsonText.Replace(Constants.PIPE_SEPARATOR, Constants.NEWLINE); if (!string.IsNullOrWhiteSpace(jsonText)) { using (XLWorkbook workBook = new XLWorkbook()) { IXLWorksheets workSheets = workBook.Worksheets; IXLWorksheet workSheet = workSheets.Add(Constants.SHEET_NAME); string[] excelHeaders = Constants.EXCEL_HEADERS.Split(Constants.CHAR_SEMICOLON); AddColumnHeaders(workSheet, excelHeaders); AddDataToExcel(jsonText, workSheet); Response.Clear(); Response.Buffer = true; Response.Charset = string.Empty; Response.ContentType = Constants.CONTENT_TYPE; Response.AddHeader(Constants.EXCEL_HEADER_NAME, string.Format(CultureInfo.InvariantCulture, Constants.EXCEL_HEADER_VALUE, Constants.EXCEL_FILENAME, string.Format(CultureInfo.InvariantCulture, string.Concat(Constants.ZERO_PLACEHOLDER, Constants.EXPORT_TO_EXCEL_FILENAME_DATEFORMAT, Constants.CLOSING_BRACKET), Convert.ToDateTime(DateTime.Now, CultureInfo.InvariantCulture)))); using (MemoryStream memoryStream = new MemoryStream()) { workBook.SaveAs(memoryStream); memoryStream.WriteTo(Response.OutputStream); } } } else { // Do logging } } catch (Exception) { // Do logging } finally { Response.Flush(); Response.End(); } }