Olá Pessoal estou com problema para exportar Um GridView para o Excel, segue abaixo meu código, após passar pelo Response.End(); apresenta o seguinte erro
{Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack.}
Criei o botão abaixo:
protected void btnImprimir_Click(object sender, EventArgs e)
{
try
{
string attachment = "attachment; filename=Contacts.xls";
Response.ClearContent();
//Converter campos de controle como CheckBox, DropDownList..
PreparaGridView(gvResultado1);
gvResultado1.EnableViewState = false;
Response.AddHeader("content-disposition", attachment);
Response.ContentType = "application/ms-excel";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
gvResultado1.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();
}
catch (Exception err)
{
throw err;
}
}
Estou usando esta função para tratar o checBocks que tenho no grid
private void PreparaGridView(Control gv)
{
LinkButton lb = new LinkButton();
Literal l = new Literal();
for (int i = 0; i < gv.Controls.Count; i++)
{
if (gv.Controls[i].GetType() == typeof(LinkButton))
{
l.Text = (gv.Controls[i] as LinkButton).Text;
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
else if (gv.Controls[i].GetType() == typeof(DropDownList))
{
l.Text = (gv.Controls[i] as DropDownList).SelectedItem.Text;
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
else if (gv.Controls[i].GetType() == typeof(CheckBox))
{
l.Text = (gv.Controls[i] as CheckBox).Checked ? "True" : "False";
gv.Controls.Remove(gv.Controls[i]);
gv.Controls.AddAt(i, l);
}
if (gv.Controls[i].HasControls())
{
PreparaGridView(gv.Controls[i]);
}
}
}
Algué, ja passou por isso, ou poderia me dar help?
Exportar Gridview Para Excel
Started By Mário_Santos, 02/02/2012, 14:30
1 reply to this topic
#1
Posted 02/02/2012, 14:30
#2
Posted 12/03/2012, 19:23
Mario,
A Devmedia tem um artigo interessante sobre o assunto:
Exportação de dados de GridView para Excel e Word
Segue descrição do artigo:
Veja neste artigo como exportar dados de um gridview para arquivos Excel e Word. Veremos um exemplo bem simples utilizando recursos do próprio .Net para realizar a exportação.
Espero que te ajude. Caso não ajude, eles tem um vídeo também, mas aí precisa ser assinante do site, no meu caso eu sou.
Video: ASP.NET e exportação de dados para o Excel
Beijinhos.
Paty
A Devmedia tem um artigo interessante sobre o assunto:
Exportação de dados de GridView para Excel e Word
Segue descrição do artigo:
Veja neste artigo como exportar dados de um gridview para arquivos Excel e Word. Veremos um exemplo bem simples utilizando recursos do próprio .Net para realizar a exportação.
Espero que te ajude. Caso não ajude, eles tem um vídeo também, mas aí precisa ser assinante do site, no meu caso eu sou.
Video: ASP.NET e exportação de dados para o Excel
Beijinhos.
Paty
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)