【问题标题】:Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack error message无法评估表达式,因为代码已优化或本机框架位于调用堆栈错误消息的顶部
【发布时间】:2012-02-07 12:31:05
【问题描述】:

每当我 Response.Redirect("myexamplepage.aspx"); 它要么继续循环,然后最后显示页面无法查看或显示上述错误。但是,如果我 Response.Redirect("http://www.google.com.sg"); 它可以工作。

我尝试了我在网上找到的所有方法,例如:

  1. Response.Redirect(url,false)
  2. 在 try-catch 之外重定向 url

我还要确保我的项目正在运行调试模式。

但我仍然面临这个问题。它是如此随机,因为以前我在重定向到我的 url 时没有任何问题。请提供解决方案谢谢。

【问题讨论】:

  • 触发“Response.Redirect”命令时出现此错误。我从页面中删除了更新面板并解决了

标签: c# asp.net


【解决方案1】:

当您尝试重定向到新页面时,大多数时候会发生此错误,而当前页面仍在尝试完成它的过程。

您可以在此处找到有关该问题的更多信息:

http://support.microsoft.com/kb/312629/EN-US/

因此,将您的代码更改为以下内容:

HttpContext.Current.ApplicationInstance.CompleteRequest();
Response.Redirect ("myexamplepage.aspx", false);

【讨论】:

    【解决方案2】:

    正如 Rob Angelier 所说,问题与未完成的流程有关。 这意味着,请确保将 Response.Redirect 移出 using statement!

    这可能不是对特定问题的实际答案,但我认为它会帮助其他人解决相同类型的问题:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-11
      • 2012-10-22
      • 1970-01-01
      相关资源
      最近更新 更多