与此问题相关: 无法评估表达式,因为代码已优化或本机框架位于调用堆栈顶部
我目前在我的例外中看到了这一点:
{无法评估表达式,因为代码已优化或本机框架位于调用堆栈顶部。}
这是有问题的代码。在 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();
}
此代码用于网页上的“导出到 excel”按钮。这是直接从另一个使用相同功能的页面复制的,并且可以正常工作。
关于如何调试此问题的任何想法?我怎样才能达到可以看到异常的程度?另外,相关问题在这里如何应用?最佳答案和选定答案非常模糊。
请注意,其中的数据table
以 Session 状态存储。
提前致谢。