Uygulamamda, Kullanıcıya verilen bazı veritabanı bilgileri için karşıdan yüklemek için bir zip dosyası yapıyorum. Kullanıcı bir "veri oluştur" düğmesine tıkladığında zip dosyası oluşturulur ve veritabanında isteği günlüğe kaydederim.Bir Postback sonra bir dosya yüklemesini başlatın
Sayfamda, Kullanıcı'nın indirme geçmişini gösteren ve ayrıca en son oluşturulan dosyayı belirli bir süre için indirme olanağı sunan bir Gridview'im var.
Yapmakta olduğum sorun, düğmeyi tıkladıklarında sayfanın yenilenmesini (böylelikle ızgara görünümünü yenilemesini ve en son isteklerini göstermesini) isterim ve sonra onlar için dosya yüklemesini başlatırım (IE, yukarı Onları açıp/iptal edip iptal edip etmeyeceğine karar vermelerini isteyin).
Bir gönderiye karşı indirme işlemini başlatabilirim, ancak Gridview'im başlamadan önce güncellenmiyor, bu nedenle listedeki en yeni isteği göstermiyor. İndirme isteminin başlamasından ÖNCE, gridview'i nasıl güncelleyebilirim?
ben indirmeye başlamak için aşağıdaki kullanıyorum:
public void BeginDownload()
{
FileDownload download = InventoryService.GetLastThreeFileDownloads(this.EmployeeId).First();
FileInfo fi = new FileInfo(Server.MapPath(SERVER_DOWNLOAD_PATH) + download.DownloadFileName);
Response.Clear();
Response.ContentType = "application/zip";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + fi.Name);
Response.TransmitFile(fi.FullName);
Response.Flush();
}
gizli bir alan tıkladıklarında belirlediğim hangi (true olarak ayarlanırsa yöntem, son öğe olarak Page_Load olayına denir dosyayı oluşturmak için kullanılan düğme).
Ayrıca jQuery/AJAX çağrılarını kullanarak sayfayı yenilemeyi ve indirme işlemini küçük bir başarı ile başlatmayı denedim. Kalıcı bir iletişim kutusu açmayı ve indirme işlemini başlatmak için bir bağlantıyı tıklatmayı ve sonra da modal kapandığında sayfayı yenilemeyi düşünmüştüm, ancak başka bir çözüm bulamazsam bu son çare olur.
Herhangi bir yardım büyük beğeni topluyor!
Şebeke görünümüne bir indirme bağlantısı oluşturdum, böylece kendi başına başlamazsa veya yanlışlıkla iptal edildiyse, sunucuda depolandığından beri dosyayı indirebilirler. Önerileriniz için teşekkürler, kesinlikle onlara bakacağım ve hangisinin daha iyi çalıştığını göreceğim. – Delebrin