private static string ToJsonValue(string value) { if (value.IsNullOrEmpty()) { return("\"\""); } if (double.TryParse(value, out var _)) { return(value); } if (long.TryParse(value, out var _)) { return(value); } if (JSON_VALUES.Any(e => e == value)) { return(value); } if (value[0] == '{' || value[0] == '[') { return(value); } return($"\"{value}\""); }
protected void RadAjaxManager1_AjaxRequest(object sender, AjaxRequestEventArgs e) { String json = e.Argument; String[] stringArray = json.Split("_".ToCharArray()); switch (stringArray[1]) { case "SVC": JSON_VALUES jsonValues = JsonConvert.DeserializeObject <JSON_VALUES>(stringArray[0]); try { Stream newStream = null; using (ExcelPackage excelPackage = new ExcelPackage(newStream ?? new MemoryStream())) { excelPackage.Workbook.Properties.Author = ContextoUsuario.oUsuario.CL_USUARIO; excelPackage.Workbook.Properties.Title = "Consultas Personales " + vs_NB_PUESTO + " vs candidatos"; excelPackage.Workbook.Properties.Comments = "SIGEIN 5.0"; excelPackage.Workbook.Worksheets.Add("Reporte"); ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets[1]; setGraphic(worksheet, vPuestoCandidatos); pivotData(worksheet); worksheet.Column(4).Width = 30; string[] propertyNames = { "Persona", "Compatibilidad" }; MemberInfo[] membersToInclude = typeof(E_PROMEDIO_CANDIDATO) .GetProperties(BindingFlags.Instance | BindingFlags.Public) .Where(p => propertyNames.Contains(p.Name)) .ToArray(); worksheet.Cells[1, 1].LoadFromCollection(getPromedios(), true, OfficeOpenXml.Table.TableStyles.Light1, BindingFlags.Instance | BindingFlags.Public, membersToInclude); worksheet.Cells[worksheet.Dimension.Address].AutoFitColumns(); excelPackage.Save(); newStream = excelPackage.Stream; } Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.AddHeader("content-disposition", "attachment; filename=Consulta " + vs_NB_PUESTO + " vs. N candidatos.xlsx"); Response.BinaryWrite(((MemoryStream)newStream).ToArray()); Response.End(); } catch (Exception ex) { UtilMensajes.MensajeDB(rnMensaje, "Ocurrio un error al procesar el Excel, Intente de nuevo.", Entidades.Externas.E_TIPO_RESPUESTA_DB.ERROR); } break; default: break; } }