1

I am currently learning uploading / downloading / deleting files in C# asp.net. I figured out how to delete every file in a folder with code like this:

protected void DeleteAllFiles(object sender, EventArgs e)
{
    System.IO.DirectoryInfo di = new DirectoryInfo(Server.MapPath("~/Output"));
    
    foreach (FileInfo file in di.GetFiles())
    {
        file.Delete();
    }

    foreach (DirectoryInfo dir in di.GetDirectories())
    {
        dir.Delete(true);
    }

    Response.Redirect("~/Outputs.aspx?ReturnPath=" + Server.UrlEncode(Request.Url.ToString()));
}

But I can't find anything on how to download all files in a directory. I figured out how to download individual files but I am having trouble with a button that downloads all files in a directory. Surely there is an easy way to do this? I can't find it anywhere else so this is probably a dumb question to ask but any help is appreciated.

marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
hidden82
  • 59
  • 7
  • 2
    So think of it not as 'downloading' files, but 'copying' files and you'll be able to find what you're looking for. The answer is simple and you want to learn, so I suggest you take a look at this documentation and the answer should become clear https://learn.microsoft.com/en-us/dotnet/api/system.io.fileinfo.copyto?view=net-6.0 – DubDub Feb 08 '22 at 17:05
  • 1
    If you actually want to download a file from a website, that's a whole other thing including sending web requests, which it's probably worth looking at a guide on, this is probably one of the more simple guides, but learning more about HttpRequests in general will help you https://jonathancrozier.com/blog/how-to-download-files-using-c-sharp – DubDub Feb 08 '22 at 17:10

1 Answers1

1

It's not possible to send multiple files in a single HTTP request. However, you can create a zip archive of multiple files and send that instead. See this answer for an example.

Hussain Khalil
  • 1,520
  • 2
  • 15
  • 24
  • 1
    Thank you sir, I have learned a lot and I did not know this. I figured out how to make a zip file and download that instead. Thanks again! – hidden82 Feb 08 '22 at 17:35