我正在使用Response.Redirect(url, **false**);
来防止异常。但是,我看到它建议在它之后使用CompleteRequest();
,我不明白。示例:here on MSDN。据我所知,CompleteRequest
将不终止执行(虽然它会影响渲染),因此任何具有持续后果的代码(如数据库写入 - 将)都有效果。因此,停止代码必须由return
等进行管理。Redirect
处理
我的理解是否正确? (我问的是因为上面的链接和类似的链接。)
答案 0 :(得分:0)
您的理解是正确的。使用CompleteRequest()
表示ASP.NET运行时不需要对请求进行进一步处理,它绕过HTTP管道中的所有事件并直接调用EndRequest
事件。但是,它不会停止执行剩余的代码行。它会优雅地结束请求,以防止数据丢失。