ASP .NET - Dica - Abrindo arquivos PDF


Nesta dica vou mostrar como abrir arquivos PDF em aplicações web usando ASP .NET Web Forms.

Abra o Visual Studio 2012 Express for web e clique em New Project.

Selecione a linguagem de sua preferência, eu estou usando Visual Basic, clique em Web e selecione o template ASP .NET Empty Web Application informando o nome AbrindoPDF e clique em OK;

No menu PROJECT clique em Add New Item e selecione o template Web Form e informe o nome Default.aspx e clique em Add;

No menu PROJECT clique em Add Existing Item e inclua na raiz do projeto um arquivo PDF qualquer. No exemplo eu incluir o arquivo Macoratti.pdf.

Abra a página Default.aspx inclua os seguintes controles:

Conforme o leiaute abaixo:

Clique duas veze sobre o botão Abrir para abrir o evento Click no arquivo code-behind Default.aspx.vb.

Defina o código a seguir neste evento:

Protected Sub btnAbrir_Click(sender As Object, e As EventArgs) Handles btnAbrir.Click
        Dim ArquivoPDF As String = txtArquivoPDF.Text
        If ArquivoPDF = "" Then
            ArquivoPDF = Server.MapPath("Macoratti.pdf")
        End If
        Try
            Dim clienteWeb As New WebClient()
            Dim arquivoBuffer As [Byte]() = clienteWeb.DownloadData(ArquivoPDF)
            If arquivoBuffer IsNot Nothing Then
                Response.ContentType = "application/pdf"
                Response.AddHeader("content-length", arquivoBuffer.Length.ToString())
                Response.BinaryWrite(arquivoBuffer)
            End If
        Catch ex As Exception
            lblmsg.Text = " Erro : " & ex.Message()
        End Try
    End Sub

Executando o projeto e informando o nome de um arquivo PDF:

iremos visualizar o arquivo aberto conforme abaixo:

Se nenhum nome for informado o arquivo Macoratti.pdf será aberto por padrão.

Pegue o projeto completo aqui: AbrindoPDF.zip

Mateus 15:8 Este povo honra-me com os lábios; o seu coração, porém, está longe de mim.

Mateus 15:9 Mas em vão me adoram, ensinando doutrinas que são preceitos de homem.

Referências:


José Carlos Macoratti