Webly: Download De Arquivos Com Asp.net - Webly

Ir para

Regras para postagem

É permitido postar livremente respostas com comentários, testes e avaliações dos scripts. Postagens contendo dúvidas sobre o script, deverão ser postadas no fórum principal de .NET.

IMPORTANTE: Todos os tutoriais postados neste fórum irão automaticamente para o portal Webly. Contribua você também e faça parte da equipe de colaboradores que fazem a evolução da web. Obrigado.
Página 1 de 1

Download De Arquivos Com Asp.net Iremos Aprender como fazer download de arquivos com o ASP.NET Avaliar tópico: ***** 1 Votos

#1 Membro offline   Leonard Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 3
  • Cadastrado: 22-janeiro 08

Ícone  Postou 22 janeiro 2008 - 09:21



Criei um website que faz o download dos arquivos existentes numa pasta do site.
depois criei um web site em C#, chamado exemploDownload e, na página Default.aspx, posicionei o controle DropDownList, como na figura abaixo:

Imagem


Criei, usando o Solution Explorer, uma pasta IMAGES, que conterá os arquivos.

Para o manipular evento Load da Page, criei o seguinte método:

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(Request.ServerVariables["APPL_PHYSICAL_PATH"] + @"\IMAGES\");
System.IO.FileInfo[] fi = di.GetFiles();
DropDownList1.Items.Add("(escolha uma imagem)");
foreach (System.IO.FileInfo arquivo in fi)
DropDownList1.Items.Add(arquivo.Name);
}
}

E, para o evento SelectedIndexChanged do DropDownList, criei o seguinte código:

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownList1.SelectedIndex != 0)
{
System.IO.FileInfo arquivo = new System.IO.FileInfo(Request.ServerVariables[“APPL_PHYSICAL_PATH”] + @”\IMAGES\” + DropDownList1.SelectedValue);
Response.Clear();
Response.AddHeader(“Content-Disposition”, “attachment; filename=” + arquivo.Name);
Response.AddHeader(“Content-Length”, arquivo.Length.ToString());
Response.ContentType = “application/octet-stream”;|
Response.WriteFile(arquivo.FullName);
Response.End();
}
}

este foi um simples exemplo, caso aja duvidas envie um email para: leoanardo_moreno@msn.com
e não deixe de conferir mais dicas de desenvolvimento no site: http://diariodafonte.wordpress.com/


0

#2 Membro offline   AndreMailho Ícone

  • Ícone
  • Grupo: Membros
  • Posts: 1
  • Cadastrado: 10-junho 09

Postou 10 junho 2009 - 03:55

Cara muito legal esse tuto! funcionou de boa! Mas queria saber se voce pode me ajudar a dapta-lo! Eu precisava fazer este download atraves de um gridView. Tipo eu listo os arquivos no grid e baixo os que estiverem com o checkbox marcado. Sera que voce pode me ajudar?

esse é o codigo que eu uso para listar os arquivos no grid:

protected void btBuscarArquivos_Click(object sender, EventArgs e)
{
loadFolder(gvResultadoBusca, Server.MapPath(@"~/fileOutPut/"));

}

public void loadFolder(GridView gvResultadoBusca, String folder)
{
gvResultadoBusca.Visible = true;
selectAll.Visible = true;
deselectAll.Visible = true;

lblVazio.Visible = false;

DirectoryInfo pasta = new DirectoryInfo(folder);
DirectoryInfo[] subPastas = pasta.GetDirectories();
FileInfo[] arquivos = pasta.GetFiles();

DataTable dt = new DataTable();
dt.Columns.Add("Nome");
dt.Columns.Add("Extensão");
dt.Columns.Add("Tamanho");
dt.Columns.Add("Data da Modificação");

foreach (FileInfo file in arquivos)
{
DataRow dr = dt.NewRow();
dr["Nome"] = file.Name;
dr["Extensão"] = file.Extension;
dr["Tamanho"] = Convert.ToString(file.Length / 1024) + " kb";
dr["Data da Modificação"] = file.LastWriteTime.ToString("dd/MM/yyyy");

dt.Rows.Add(dr);
}

gvResultadoBusca.DataSource = dt;
gvResultadoBusca.DataBind();
}

else
{
gvResultadoBusca.Visible = false;
selectAll.Visible = false;
deselectAll.Visible = false;

lblVazio.Visible = true;
}
}
0

Página 1 de 1


Resposta rápida

  

1 usuário(s) está(ão) lendo este tópico
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)