【工作笔记0009】VS异常:由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。

本文讨论了一个在网站项目中遇到的问题,即在try语句中尝试使用Response.Redirect导致的异常。通过将显示提示信息的函数或代码移出try{}

今天做的网站项目中一个功能是导入数据,然后提示一个导入成功或失败的提示信息。

我是这样做的

结果发现,编译项目是不会出错的,但运行到try中的更新数据成功后的提示语句MessageBoxAndReturn("操作成功!");错误异常出现了,也就是标题中的异常:由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。

后来查询相关资料,发现是因为不能在try语句中填写 跳出try{}catch{}块(例如Response.Redirect)而直接返回其他页面的代码

解决方法:

1.修改代码,将显示提示信息的函数或者代码放到try{}catch{}块外面;

2.若是用Response.Redirect方法实现跳转页面,则需要使用这个重载函数:

Response.Redirect("XXX.aspx",false); //第二个参数填false就可以了,意思是不终止当前页的执行!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值