【发布时间】:2010-07-15 21:03:00
【问题描述】:
我在异步调用的方法中有一个 try-catch。 发生错误时,在 catch 内我有一个 Response.Redirect 因为我需要 重定向到登录页面。
This 是我的问题。
但我的问题不涉及过期的东西,所以 计时器不是解决问题的最佳方法。
【问题讨论】:
标签: c# asp.net redirect call response.redirect
我在异步调用的方法中有一个 try-catch。 发生错误时,在 catch 内我有一个 Response.Redirect 因为我需要 重定向到登录页面。
This 是我的问题。
但我的问题不涉及过期的东西,所以 计时器不是解决问题的最佳方法。
【问题讨论】:
标签: c# asp.net redirect call response.redirect
您在回调中调用的方法超出了整页请求的上下文。您需要做的是在响应中返回一个值,提示浏览器从客户端执行重定向。这可以像对 login.aspx 的 javascript window.location 调用一样简单。客户端的回调处理程序将需要逻辑来识别这一点并评估 javascript(本质上将执行它)。
另一种方法是向浏览器返回错误标头,并在 ajax 调用中设置的错误处理程序中执行window.location ='login.aspx'; 调用。
【讨论】: