Não é possível avaliar a expressão ... na página da web
Relacionado a esta questão:Não é possível avaliar a expressão porque o código está otimizado ou um quadro nativo está no topo da pilha de chamadas
Atualmente estou vendo isso na minha exceção:
{Não é possível avaliar a expressão porque o código está otimizado ou um quadro nativo está no topo da pilha de chamadas.}
Aqui está o código ofensivo. A exceção é lançada em 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 está sendo usado em um botão "exportar para excel" em uma página da web. Isso é copiado diretamente de outra página que usa a mesma funcionalidade que funciona corretamente.
Alguma idéia de como depurar esse problema? Como posso chegar a um ponto em que posso ver a exceção? Além disso, como a questão relacionada se aplica aqui? A resposta principal e as respostas selecionadas são incrivelmente vagas.
Por favor, note que os dados emtable
é armazenado no estado da sessão.
Desde já, obrigado.