无法计算表达式,因为代码已优化或本机帧位于调用堆栈之上

时间:2012-07-11 19:04:41

标签: c# asp.net

我正在一个用户来的网站上工作并提交一些信息。提交信息后,我试图同时发送两封邮件 - 一封发给我的销售团队,一封发给我网站上的访客。

发送邮件时,我在使用Response.Redirect("http://www.targetsite.com/index.php")重定向到其他页面时收到以下错误:

  

无法评估表达式,因为代码已优化或a   本机框架位于调用堆栈之上

有人可以帮我解决这个问题吗?提前谢谢。

2 个答案:

答案 0 :(得分:1)

您看到的那条消息确实不是您在运行时看到的错误 - 通常,它在try-catch-finally块的catch部分中间的调试器中看到。您是否单步执行调试器中的代码,或者您是否因为应用程序在调试器外部运行而实际收到错误?

如果您正在尝试确定实际发生的错误,我建议在Response.Redirect调用周围放置一个完整的try-catch块,并检查此时触发的异常,例如

Try
   Response.Redirect(http://www.targetsite.com/index.php")
Catch ex as Exception 
   ' add your handling code here, using ex as the Exception placeholder variable
End Try
祝你好运!

答案 1 :(得分:1)

查看此Microsoft link

基本上你需要改变你的代码如下:

Response.Redirect("http://www.targetsite.com/index.php", false)