Related to this question: Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack
I am currently seeing this in my exception:
{Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack.}
Here's the offending code. The exception is thrown on 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();
}
This code is being used in an "export to excel" button on a web page. This is copied directly from another page that uses the same functionality that works correctly.
Any ideas on how to debug this issue? How can I get to a point where I can see the exception? Also, how does the related question apply here? The top answer and selected answers are incredibly vague.
Please note that the data in table
is stored in Session state.
Thanks in advance.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…