我正在尝试运行(在try块中,没有捕获但是最终)
HttpContext.Current.Server.Execute(child1, tw, true);
子页面尝试运行以下某个选项:
context.Response.Redirect(child2.uri.ToString());
handler.ProcessRequest(context); //context has had items added to update querystring
context.Server.Transfer(child2.uri.ToString());
我可以期待控制权返回原始页面吗?我想我可能 - 一旦代码到达(例如)Server.Transfer,我发现自己回到了我的finally块中的原始父页面(但是在我的Server.Execute被跳过之后的任何代码)。
作为一个注释,如果我只是重定向到它,第一个子页面工作正常,但是我必须通过cookie来跨越登录屏障(我试图绕过Server.Execute)。
这些嵌套执行,传输和重定向的预期行为是什么?
答案 0 :(得分:0)
回答我自己的问题:
是。一旦孩子请求完成处理,执行将最终取回控制权 - Server.Transfer
的情况将转移子请求但不转移父请求。