none
Problema al mostrar archivo PDF desde un Gridview RRS feed

  • Pregunta

  • Saludos.  Gracias al foro logré guardar un archivo PDF en una carpeta (no en la base de datos) y la ruta en un campo de la BD, de esta forma:

    Dim rutaArchivo As String = "C:\xxxx\xxxx\proyecto\documentos"
    If FileUpload1.HasFile Then
       Dim nombreArchivo As String = FileUpload1.FileName
       rutaArchivo += nombreArchivo
       FileUpload1.SaveAs(rutaArchivo)
    End If

    En otra página tengo un Gridview donde agregué un TemplatedField con un Hyperlink y esta propiedad: NavigateUrl='<%# Eval("CAM_Archivo", "~/informe5.aspx?filename={0}"), para mostrar el archivo en una página.

    Y en la página informe5.aspx.vb tengo:

    Protected Sub Page_Load(sender As Object, e As EventArgs)
            Dim filename As String = Request.QueryString("filename").ToString()
            Response.Clear()
            Response.AddHeader("content-disposition", String.Format("attachment;filename={0}", filename))
            Response.ContentType = "Application/pdf"
            Response.WriteFile(Server.MapPath(Path.Combine("~/documentos", filename)))
            Response.Flush()
            Response.End()
    End Sub

    El problema es que se muestra la página pero en blanco, con la ruta arriba en la barra del navegador.

    ¿Dónde está el error?

    Gracias


    Carlos Mora, foro MSDN


    • Editado Liyos jueves, 28 de julio de 2016 15:44 Aclarar
    jueves, 28 de julio de 2016 15:43

Todas las respuestas

  • hola

    al realizar el FileUpload1.SaveAs(), porque no usaste el Server.MapPath() para resolver la ruta donde grabar el archivo?

    lo planteo porque quizas la ruta no sea ~/documentos, ya que defines uan distinta cuando grabas

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 28 de julio de 2016 15:59
  • Hola Leandro.

    Pues lo hice, use el Server.MapPath() al realizar FileUpload1.SaveAs() y me guarda la misma ruta que cuando no lo uso. Obviamente el resultado al intentar abrir el archivo es el mismo, la pantalla se queda en blanco.

    Pasa lo mismo en Firefox y en Chrome, así que no creo que sea cosa del navegador.

    La carpeta tiene los permisos correspondientes, pues lo puedo guardar sin problema.


    Carlos Mora, foro MSDN

    jueves, 28 de julio de 2016 16:13