none
REcuperação de arquivo PDF salvo no SQL SERVER e dar link para fazer donwload RRS feed

  • Pergunta

  • Boa noite.

    Estou fazendo um sistema ASP.NET C# forms, onde salvei um arquivo em PDF no SQL SERVER. Até ai tudo blz.

    Agora preciso saber como dar a opção ao usuário para fazer o download.

    Segue abaixo como estou trazendo as informações.

    Pegando as informações do Banco.

    public SqlDataReader ListarTodasReuniao()
        {
            String query_string = " select ";
            query_string += " codreuniao,";
            query_string += " nome,";
            query_string += " assunto,";
            query_string += " datahora,";
            query_string += " inicio,";
            query_string += " termino,";
            query_string += " ata";
            query_string += " from reuniao ";
    
            SqlConnection conexao = new SqlConnection();
            conexao.ConnectionString = this.string_conexao;
            conexao.Open();
    
            SqlCommand comando = new SqlCommand();
            comando.CommandText = query_string;
            comando.Connection = conexao;
    
            SqlDataReader dr = comando.ExecuteReader();
    
            return dr;
        }

    FAzendo o tratamento:

    using System;
    using System.Collections.Generic;
    using System.Data.SqlClient;
    using System.IO;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class telas_Reuniao_ListaReuniao : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack) {
                ListarTodasReunioes();
            }
    
        }
    
        public void ListarTodasReunioes()
        {
            BancoDeDados bd = new BancoDeDados();
    
            SqlDataReader drReuniao = bd.ListarTodasReuniao();
    
            rptReuniao.DataSource = drReuniao;
            rptReuniao.DataBind();
    
    
            
        }
    }

    Carregando na tela:

     <asp:Repeater ID="rptReuniao" runat="server" >
    
     <HeaderTemplate>
          
        <table class="table table-striped custab">
             <br />    <br />
            
        <tr >
        <td>
            <font ><b>Código</b></font>
        </td>
    
            <td>
            <font ><b>nome</b></font>
        </td>
    
         <td>
            <font ><b>Assunto</b></font>
        </td>
            
         <td>
            <font ><b>Data/Hora(previsto)</b></font>
        </td>
    
        <td>
            <font ><b>Início</b></font>
        </td>
    
        <td>
            <font ><b>Término</b></font>
        </td>
    
             <td>
            <font ><b>Ata</b></font>
        </td>
        
        
    
       
         
        <td align="center">
                <font ><b>Ação</b></font></td>
       </tr>
    </HeaderTemplate>
    
    
    
        <ItemTemplate>
       <tr >
           <td>
                 <%# DataBinder.Eval(Container.DataItem, "codreuniao") %>   
           </td>
            <td>
                 <%# DataBinder.Eval(Container.DataItem, "nome") %>   
           </td>
           <td>
                 <%# DataBinder.Eval(Container.DataItem, "assunto") %>   
           </td>
           <td>
                 <%# DataBinder.Eval(Container.DataItem, "datahora") %>   
           </td>
           <td>
                 <%# DataBinder.Eval(Container.DataItem, "inicio") %>   
           </td>
           <td>
                 <%# DataBinder.Eval(Container.DataItem, "termino") %>   
           </td>
    
           <td>
                 <%# DataBinder.Eval(Container.DataItem, "ata") %>   
           </td>
    
          
    
           <td class="text-center">
            
    
           </td>
       </tr>
    </ItemTemplate>
    
        </asp:Repeater>
            </div>
            </div>

    Tela carregada no navegador:

    minha intenção é onde está escrito "System.Byte[] " ser um link, que ao clicar, é feito o download do PDF.

    Agradeço desde já.

    terça-feira, 27 de fevereiro de 2018 00:59

Respostas

Todas as Respostas