none
Download após um Upload RRS feed

  • Pergunta

  • Seguinte, tenho uma página no meu Web Site C# , que tem um campo <fileupload> para a pessoa anexar um arquivo .zip ou .pln.

     

    Após fazer esse anexo, um linkbutton aparece para a pessoa fazer o download desse arquivo .zip ou .pln.

    (Isso mesmo, o download do próprio arquivo que anexou, eu sei que é redundante e estranho HAHA mas é para a pessoa confirmar que o arquivo foi enviado corretamente.)

     

    A parte do Upload está pronta, minha dúvida é como eu posso fazer o download desse arquivo anexado.

     

    Meu código do upload:

     private void FazerUpload()
      {
        if (!ValidarArquivo())
        {
          return;
        }
    
        string arquivo = Path.GetExtension(fuTermo.FileName);
    
        string savepath = Server.MapPath("");
        savepath += @"\..\Arquivos\Plano";
    
        fuTermo.SaveAs(savepath + @"\" + PageFuncoes.GetEmpInscricao(this.Session).ToString().PadLeft(4, '0') + arquivo);
    
        lkbArquivo.Visible = true;
        lkbArquivo.Text = "Visualize o <u>Plano de Negócio</u> anexado";
        imgVisualizar.Visible = true;
    
        if (imgVisualizar.Visible == true)
        {
          EnviarMensagem("Plano de negócio inserido com sucesso!");
        }
      }
    

     

    Alguém pode me ajudar?

    Obrigado.

    quarta-feira, 29 de setembro de 2010 13:22

Todas as Respostas

  • Coloca só isso?

     

    Response.ContentType = "image/jpeg";
    Response.AppendHeader("Content-Disposition","attachment; filename=SailBig.jpg");
    Response.TransmitFile( Server.MapPath("~/images/sailbig.jpg") );
    Response.End();
    quarta-feira, 29 de setembro de 2010 13:38
  • Fiz assim, mas não está dando certo:

     

    protected void Download()
      {
    
        string filename = Path.GetExtension(fuTermo.FileName); ;
    
        if (filename != "")
        {
    
          string savepath = Server.MapPath("");
          savepath += @"\..\Arquivos\Plano";
    
          System.IO.FileInfo file = new System.IO.FileInfo(savepath);
    
          if (file.Exists)
          {
            Response.Clear();
    
            Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name);
    
            Response.AddHeader("Content-Length", file.Length.ToString());
    
            Response.ContentType = "application/octet-stream";
    
            Response.WriteFile(file.FullName);
    
            Response.End();
          }
    
          else
          {
    
            Response.Write("Esse arquivo não foi inserido.");
    
          }
    
        }
    
      }
    

     

    quarta-feira, 29 de setembro de 2010 13:57