내 응용 프로그램에서 일부 내 보낸 데이터베이스 정보를 다운로드 할 사용자를위한 zip 파일을 작성 중입니다. zip 파일은 사용자가 "데이터 생성"버튼을 클릭하고 데이터베이스에 요청을 기록 할 때 만들어집니다.포스트 백 이후에 파일 다운로드 시작
내 페이지에는 사용자의 다운로드 내역을 보여주는 Gridview가 있고 일정 기간 동안 최신 생성 파일을 다운로드 할 수있는 기능도 있습니다.
내가 겪고있는 문제는 버튼을 클릭 할 때 페이지를 새로 고침하여 (그리드뷰보기를 새로 고침하고 최신 요청을 표시하고 싶습니다.) 파일 다운로드를 시작하는 것입니다. 메시지를 열거 나 저장하거나 취소할지 여부를 결정하도록합니다.
포스트 백에서 다운로드를 시작할 수 있지만 시작하기 전에 GridView가 업데이트되지 않아서 목록에 최신 요청이 표시되지 않습니다. 다운로드 프롬프트가 시작되기 전에 어떻게 gridview를 업데이트 할 수 있습니까?
나는 다운로드를 시작하려면 다음을 사용하고 있습니다 :
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();
}
숨겨진 필드가 클릭하면 내가 설정하는 (true로 설정되어있는 경우 방법은, 마지막 항목으로 Page_Load 이벤트에서 호출 파일을 작성하는 버튼).
jQuery/AJAX 호출을 통해 페이지를 새로 고치고 다운로드를 거의 시작하지 않아도 호출을 시도했습니다. 모달 대화 상자를 열고 다운로드를 시작하고 모달을 닫을 때 페이지를 새로 고침하는 링크를 클릭하게하는 방법에 대해 생각해 보았습니다.하지만 다른 해결책을 찾을 수없는 경우 최후의 수단입니다.
도움을 주시면 대단히 감사하겠습니다.
나는 gridview에 다운로드 링크를 만들었습니다. 그래서 독자적으로 시작하지 않거나 실수로 취소 할 경우 서버에 저장되므로 파일을 다운로드 할 수 있습니다. 제안을 주셔서 감사합니다. 나는 확실히 그것들을 들여다 볼 것이며, 어떤 것이 가장 잘 작동하는지 볼 것입니다. – Delebrin