No se puede evaluar la expresión ... en la página web
Relacionado con esta pregunta:No se puede evaluar la expresión porque el código está optimizado o un marco nativo está en la parte superior de la pila de llamadas
Actualmente estoy viendo esto en mi excepción:
{No se puede evaluar la expresión porque el código está optimizado o un marco nativo está en la parte superior de la pila de llamadas.}
Aquí está el código ofensivo. La excepción es lanzada en response.End ();
DataSet dataSet = new DataSet();
dataSet.Tables.Add(table);
// Table is a well-formatted DataTable formed from data stored in a Session variable
HttpResponse response = HttpContext.Current.Response;
response.Clear();
response.Charset = "";
response.ContentType = "application/vnd.ms-excel";
response.AddHeader("Content-Disposition", "attachment;filename=\"ExcelFile.xls\"");
using (StringWriter stringWriter = new StringWriter())
using (HtmlTextWriter htmlTextWriter = new HtmlTextWriter(stringWriter))
{
DataGrid dataGrid = new DataGrid { DataSource = dataSet.Tables[0] };
dataGrid.DataBind();
dataGrid.RenderControl(htmlTextWriter);
response.Write(stringWriter.ToString());
response.End();
}
Este código se está utilizando en un botón "exportar a Excel" en una página web. Esto se copia directamente desde otra página que utiliza la misma funcionalidad que funciona correctamente.
¿Alguna idea sobre cómo depurar este problema? ¿Cómo puedo llegar a un punto donde pueda ver la excepción? Además, ¿cómo se aplica aquí la pregunta relacionada? La respuesta principal y las respuestas seleccionadas son increíblemente vagas.
Tenga en cuenta que los datos entable
Se almacena en estado de sesión.
Gracias por adelantado.