asp.net-Response.End() 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。

问题描述

Response.End() 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。
 public void Write(string obj){     Response.Clear();     Response.Write(obj);     HttpContext.Current.ApplicationInstance.CompleteRequest();     Response.End();}

AJax请求自己的后台页面后台输出参数Write(""1"");报错了
错误:由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。
求解决方案!

解决方案

原因:

如果使用 Response.End、Response.Redirect 或 Server.Transfer 方法,将出现 ThreadAbortException 异常。您可以使用 try-catch 语句捕获此异常。
Response.End 方法终止页的执行,并将此执行切换到应用程序的事件管线中的 Application_EndRequest 事件。不执行 Response.End 后面的代码行。
此问题出现在 Response.Redirect 和 Server.Transfer 方法中,因为这两种方法均在内部调用 Response.End。
解决方案 :
要解决此问题,请使用下列方法之一:
? 对于 Response.End,调用 HttpContext.Current.ApplicationInstance.CompleteRequest 方法而不是 Response.End 以跳过 Application_EndRequest 事件的代码执行。
? 对于 Response.Redirect,请使用重载 Response.Redirect(String url bool endResponse),该重载对 endResponse 参数传递 false 以取消对 Response.End 的内部调用。例如:
Response.Redirect (""nextpage.aspx"" false);

解决方案二:
请参考csdn里的帖子

http://bbs.csdn.net/topics/380263118

时间: 2024-11-03 06:35:02

asp.net-Response.End() 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。的相关文章

无法watch-当前方法的代码已经过优化 无法计算表达式的值

问题描述 当前方法的代码已经过优化 无法计算表达式的值 网上找的解决方案是在项目属性里不要勾选 代码优化 可是我的项目一直都没有勾选过 解决方案 你从哪看出来我使用了response.end 和 HttpContext.Current.ApplicationInstance.CompleteRequest 结束 ???? 解决方案二: 这种情况一般是使用了response.end,并将代码放在try catch里,解决办法就是将response.end去掉或正如楼主用HttpContext.Cu

asp.net 购物车实现详细代码_实用技巧

<%@ Page language="c#" Codebehind="shoppingcart.aspx.cs" AutoEventWireup="false" Inherits="myshop.shoppingcart" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ><HTML> <

asp图片文件上传代码完全版

<!--#include file="upload_wj.inc"--> <style> td{font-size:9pt;line-height:120%;color:#353535} body{font-size:9pt;line-height:120%} a:link          { color: #000000; text-decoration: none } a:visited       { color: #000000; text-decor

asp 检测域名是否注册代码

asp 检测域名是否注册代码 <% On Error Resume Next Server.ScriptTimeOut=9999999 Function getHTTPPage(Path)         t = GetBody(Path)   getHTTPPage=BytesToBstr(t,"GB2312") End function Function GetBody(url)         on error resume next         Set Retriev

asp防止刷新功能实现代码

使用说明 1.在要保护的页面顶部加如对AntiRefresh.asp文件的引用如: <!--#include virtual="AntiRefresh.asp" --> 2.接着添加调用代码 复制代码 代码如下: <% Const VarNameDateArr="www_domai_net_App_DataArr" '队列名称 Const VarNameIPArr="www_domai_net_App_IPArr" '队列名称

Asp:Cookies应用指南,详细代码及教程

cookie|cookies|教程|cookie 实际上,在web开发中,cookie仅仅是一个文本文件,当用户访问站点时,它就被存储在用户使用的计算机上,其中,保存了 一些信息,当用户日后再次访问这个站点时,web可以将这些信息提取出来.   尽管现在听起来cookie没有什么激动人心的,但实际上利用它,你能实现许多有意义的功能!比如说:你可以在站点上放置 一个调查问答表,询问访问者最喜欢的颜色和字体,然后根据这些定制用户的web界面.并且,你还可以保存访问者的登录密码,这 样,当访问者再次访

asp+的论坛列表程序---代码部分

asp+|程序 原作者: 雨晨asp+的论坛列表程序---代码部分 -------------------------------------------------------------------------------- [bigeagle] 于 2000-11-13 15:38:57 加贴在 Joy ASP ↑: /////////////////////////////////////////////////////////////////////////////// // // F

asp图片防盗链的代码

  asp图片防盗链的代码 getimage.asp strBuffer = Request.ServerVariables("HTTP_REFERER") strBuffer = mid(strBuffer, InStr(strBuffer,".") + 1) strBuffer = left(strBuffer, InStr(strBuffer, "/") - 1) FilePath = "/HIDDENIMAGES/"

学习ASP编程必会的代码

ASP课堂上学到的程序设计,都是按照语法和对象来一点一点的学习的,到最后编程的时候,新手根本想不出来要怎么来组合才能完成一个模块,下面把这些语法按照程序员常用的模块方式组合起来,请大家按照模块来记忆,然后按照模块来应用,不一定要一个一个字母的背下来,关键是用到这些模块的时候能准确的,拿出来,安上去! 注意下面的标点符号,全部都为英文中的半角符号,如果写成了全角的就一定运行不起来了,切忌切忌-- 1.常用写法 (1)ASP开始结束符语法:<% %> 文件后缀.asp (2)Request.for