Visualizar PDF en ASP.Net C#
ASP.Net permite visualizar un PDF desde incrustar el código HTML necesario en el aspx (WebForm) o desde el servidor con C#.
Para que el buscador pueda desplegar el documento requiere de herramientas de terceros por ejemplo el visor de Google.
El visor de Google permite cargar PDF con tan solo enviarle la url del documento, el diseño del visor es básico.
Lo único que hay que tener en cuenta es que la url del documento debe de ser accesible desde internet.
Visualizar PDF en ASP.Net
Crea un proyecto asp.net webform en Visual Studio y agrega un documento PDF para realizar las pruebas.
Abre o crea un archivo aspx, agregamos un div con id y el runat para utilizarlo desde el servidor.
<div runat="server" id="docPDF" />
Abre el código C# del archivo aspx, lo primero que haremos es obtener la url del documento pdf al ejecutar la aplicación.
Con el siguiente código obtenemos y al mismo tiempo concatenamos el nombre del documento.
string path = HttpContext.Current.Request.Url.AbsoluteUri.Replace(HttpContext.Current.Request.Url.PathAndQuery, "/") + "doc.pdf";
En la variable path se almacena la url del documento pdf.
Ya que tenemos la url lo enviaremos al visor de Google para desplegarlo en nuestra página (div declarado anteriormente).
docPDF.InnerHtml = "<iframe src='https://docs.google.com/gview?url="+ path + "&embedded=true' style='width:100%; height:700px;' frameborder='0' ></iframe>";
- Mediante InnerHtml enviamos código html al div del archivo aspx.
- Iframe es una etiqueta que es requerida por el visor.
- En el src se envia la url del visor suma con la url del documento pdf que esta almacenado en path.
- &embedded=True indica que el documento sea incrustado a la página.
- Mediante style definimos las medidas del frame para mostrar el documento.
Ejecutemos la aplicación, podrás ver el resultado siguiente.
Al tener la url de tipo local el visor no encuentra el documento desde internet, por esa razón vemos el mensaje.
Para ver un documento, puedes modificar la url por la de un documento que este en línea.
Podría interesarte Insertar fotos de Google Fotos en un sitio web
Observaciones
Este visor de documentos es únicamente para PDFs, otros tipos de formatos como docx, xlsx, pptx, etc. no son cargados.