none
Exportar gridview para excel de uma pagina https RRS feed

  • Pergunta

  • Pessoal boa tarde!

    Estou com um problema que não me era esperado. Tenho um gridview que a partir dele o exporto para excel! O problema é que na a pagina é https(tem certificado) e no IE eu não consigo gerar o excel pois acontece o seguinte erro:

    "O internet explorer não pode abri o site .....e informa que ele não pode baixar (download) do conteudo.

    Alguem pode me ajudar? Já tentei de td e ainda não consegui sucesso.

    Obrigado!

    quinta-feira, 21 de junho de 2012 16:36

Respostas

Todas as Respostas

  • Acho que esse artigo pode te ajudar

    http://ecode10.com/artigo/712/gerando+relatorio+e+exportando+para+o+excel.aspx


    Espero ter ajudado. Se ajudei, favor marcar no fórum falando que foi útil.

    Mauricio Junior - Comunidade www.ecode10.com

    quinta-feira, 21 de junho de 2012 17:56
  • Amigo,

    Você já testou sem https para ver se funciona?
    Se sim e funciona sem problema...uma solução rápida seria você guardar as informações do GRID em um SESSION, redirecionar o usuário para uma página sem https apenas para fazer o download utilizando as informações da SESSION.

    De longe essa não é uma solução 100% indicada, mas se você precisa de uma solução rápida até encontrar o problema acredito que seja o caminho.

    Boa sorte!


    Não esqueça de marcar como útil uma resposta que te ajude.
    "A diversão é a alma do negócio"

    quinta-feira, 21 de junho de 2012 18:02
  • Obrigado Mauricios mas, o problema não é gerar o excel. O problema é que o Ie não permite efetuar o download do arquivo gerado! Quando executo a aplicação da minha maquina, funciona diretinho pois não tem o Https mas, qd publico o site ai o Ie não permite efetuar o download. No firefox e no Chrome funciona diretinho.
    quinta-feira, 21 de junho de 2012 20:34
  • Amigo,

    Veja se esse link http://stackoverflow.com/questions/1682123/downloading-a-file-over-https-in-ie8-using-asp-net te ajuda!

    Boa sorte!


    Não esqueça de marcar como útil uma resposta que te ajude.
    "A diversão é a alma do negócio"

    quinta-feira, 21 de junho de 2012 20:46
  • Lucas,

    Dei uma olhada no link mas não funcionou. O unico codigo que não gerou o erro foi esse abaixo, porem ele gera o xls da pagina toda. Eu apenas queria o xls do gridview. Parecia uma coisa tão besta mas ta muito complicado!

      HttpContext.Current.Response.Clear();
    
                   HttpContext.Current.Response.ClearHeaders ();
    
                   HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=teste.xls");
    
                   HttpContext.Current.Response.AddHeader ("Cache-Control", "private, max-age = 15");
    
                   HttpContext.Current.Response.ContentType = "application / vnd.ms-excel";
    
                   HttpContext.Current.Response.Cache.SetExpires(DateTime.Now.AddMinutes (15));




    sexta-feira, 22 de junho de 2012 00:32
  • Amigo,

    Envie seu código para a gente dar uma olhada e tentar encontrar uma solução, tive esse problema a um tempo atrás mas não lembro o que eu fiz para arrumar.

    Boa sorte!


    Não esqueça de marcar como útil uma resposta que te ajude.
    "A diversão é a alma do negócio"

    sexta-feira, 22 de junho de 2012 13:10
  • Opa,

    Ja tentei de várias formas é nada! Descobri que é ou que pode seros cabeçalhos de controle de cache mas já testei vários e nada!

    Abaixo segue o codigo de como estou gerando o xls atraves do meu grid view.

    Obrigado!

         Response.Clear();
    
                    Response.AddHeader("content-disposition", "attachment;filename=test.xls");
    
                    Response.Charset = "";
    
                    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    
                    Response.ContentType = "application/vnd.xls";
      
                    System.IO.StringWriter sWr = new System.IO.StringWriter();
           
                    System.Web.UI.HtmlTextWriter hWr = new HtmlTextWriter(sWr);
    
                    grdtest.RenderControl(hWr);
    
                    Response.Write(sWr.ToString());
    
                    Response.End();

    sexta-feira, 22 de junho de 2012 14:12
  • Amigo,

    Sai procurando e achei um cara que teve o mesmo problema que você pelo jeito conseguiu resolver, leia esse post http://stackoverflow.com/questions/4672073/export-to-excel-doesnt-work-on-ie-under-ssl-https 

    Cabeça fresca que tudo vai dar certo!!

    Boa sorte!


    Não esqueça de marcar como útil uma resposta que te ajude.
    "A diversão é a alma do negócio"

    • Marcado como Resposta Harley Araujo segunda-feira, 25 de junho de 2012 11:25
    sexta-feira, 22 de junho de 2012 14:36