下载文件并在asp.net中发送电子邮件

时间:2011-03-09 13:25:29

标签: asp.net

如何在response.redirect之后识别代码? 我想使用response.redirect强制下载文件,一旦文件下载,我想显示模式弹出以发送电子邮件。

但是在response.redirect之后弹出窗口没有被调用。 请帮我解决这个问题,

由于



更新:
感谢您的回复。 我这样做。有什么建议吗?

Response.AddHeader("Content-Disposition", "attachment;filename=" + FileName.Name);
                long FileSize = myFile.Length;
                byte[] Buffer = new byte[(int)FileSize];
                myFile.Read(Buffer, 0, (int)FileSize);
                myFile.Close();

                Response.BinaryWrite(Buffer);
                // Response.Redirect(filepath,false);
                Response.Flush();
                Response.Close();
                ScriptManager.RegisterStartupScript(this, this.GetType(), "ShowPopup", "window.setTimeout('PopupModal()',50);", true);

1 个答案:

答案 0 :(得分:0)

除非在使用Response.Redirect时输入指定的位置时调用您要执行的代码,否则不能这样做。一旦你转移了控制权,就是它,你就会结束反应 - 执行的上下文不再是你转移到接管的地方。

如果您想将文件推送到网上,请查看Response.WriteFile,这样您就可以让他们下载文件并继续执行您的代码,所有这些都在一个页面内,或至少转移控制具有特定行为的页面;这里是MSDN link以获取更多信息。