• 13-03-2021, 19:34:00
    #1
    Merhabalar,

    Asp.Net projesi ile ftp bilgileri dosya listeleme ve indirme işlemi yapıyorum.
    Dosya indirme işleminde dosyanın sayfa kapansa da browser üzerinden işleme devam etmesini istiyorum.
    Yaptığım işlemde dosya indirme işlemi tamamen bitince bitince dosyayı indiriyor yüzdesini filan göremiyorum.
    Kullandığım kodları aşağıda paylaşıyorum

      FtpWebRequest request = (FtpWebRequest)WebRequest.Create(FtpAdres + FtpKlasor + fileName);
                    request.Method = WebRequestMethods.Ftp.DownloadFile;
    
                    //Enter FTP Server credentials.
                    request.Credentials = new NetworkCredential(FtpKullaniciAdi, FtpSifre);
                    request.UsePassive = true;
                    request.UseBinary = true;
                    request.EnableSsl = false;
    
                    FtpWebResponse response = (FtpWebResponse)request.GetResponse();
                    using (MemoryStream stream = new MemoryStream())
                    {
                        //Download the File.
                        response.GetResponseStream().CopyTo(stream);
                        Response.AddHeader("content-disposition", "attachment;filename=" + fileName);
                        Response.Cache.SetCacheability(HttpCacheability.NoCache);
                        Response.BinaryWrite(stream.ToArray());
                        Response.End();
                    }
  • 23-03-2021, 19:22:34
    #2
    download için bir api yazmanız ve yüzde gözükmesi için content-length headerine dosya boyutunu eklemeniz gerekli
    FileStreamResult ile sunucu aynı zamanda dosyayı çekerken kullanıcıda indirebilir
    sunucuda indirmenin bitmesini beklemezsiniz