none
Problemas con creacion de pdf y ajax !!!!!!!!!! RRS feed

  • Pregunta

  • Hola a todos resulta que tengo una web form que ejecuta el siguiente metodo:

    public MemoryStream generarGV(System.Web.UI.WebControls.GridView[] gv, String titulo, String subtitulo, String fecha, String nombreFile, int[] col,MemoryStream _MemoryStream)
            {
                int y,z;
                using (_MemoryStream = new MemoryStream())
                {
                    PdfWriter.GetInstance(documento,_MemoryStream);
                    documento.Open();
                    documento.Add(new Phrase(titulo));
                    documento.Add(new Phrase(subtitulo));
                    documento.Add(new Phrase(fecha));
                    y = 0;
                    for (z = 0; z <= gv.Length - 1; z++)
                    {
                        y = this.crearGV(gv[Z], y, col[Z]);               
                    }               
                    return _MemoryStream;
                   
                }
            }

    Lo que me retorna que es un MemoryStream lo guardo en una variable de sesion y luego para crear el pdf en un formulario hago lo siguiente:

    protected void Page_Load(object sender, EventArgs e)
        {
            try
            {           
                System.IO.MemoryStream stream = new System.IO.MemoryStream();
                stream=(System.IO.MemoryStream)Session["pdf"];           
                Response.Clear();
                Response.ContentType = "application/pdf";
                Response.AddHeader("Content-Disposition", "inline;filename=Informe.pdf");
                Response.BinaryWrite(stream.ToArray());
                Response.Flush();
                stream.Close();
                Response.End();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }

    Pero me genera un error y me dice que hay algo en la pila de llamadas que no me permite finalizar y genera una excepcion. si quito el Response.End(); guarda el archivo pdf, pero cuando lo voy a abrir me dice que el archivo esta malo

    Que debo de hacer para solucionar este problema?

    Estoy utilizando ITEXTSHARP

    Gracias por su atencion y colaboracion.


    martes, 30 de septiembre de 2008 22:52