如何在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);
答案 0 :(得分:0)
除非在使用Response.Redirect
时输入指定的位置时调用您要执行的代码,否则不能这样做。一旦你转移了控制权,就是它,你就会结束反应 - 执行的上下文不再是你转移到接管的地方。
如果您想将文件推送到网上,请查看Response.WriteFile
,这样您就可以让他们下载文件并继续执行您的代码,所有这些都在一个页面内,或至少转移控制具有特定行为的页面;这里是MSDN link以获取更多信息。