当前位置: 代码迷 >> ASP.NET >> 由于代码已经过优化或者本机框架位于调用堆栈之下,无法计算表达式的值
  详细解决方案

由于代码已经过优化或者本机框架位于调用堆栈之下,无法计算表达式的值

热度:6417   发布时间:2013-02-25 00:00:00.0
由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。
一个文件下载程序 总是报"由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。"这个错误 不知道什么问题。 请指教代码如下:

C# code
string xls=Server.MapPath("~/filename.doc");System.IO.FileInfo file = new System.IO.FileInfo(xls); string fileName = file.Name;Response.Clear();Response.Buffer = true;Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName)); Response.AddHeader("Content-Length", file.Length.ToString()); Response.ContentType = "application/msword";Response.WriteFile(file.FullName);Response.Flush();Response.End();


------解决方案--------------------------------------------------------
去掉
Response.End();

------解决方案--------------------------------------------------------
看着有的句子可能不需要吧
Response.Clear();
Response.Buffer = true;
Response.Flush();
Response.End();
感觉重复,,个人看法
------解决方案--------------------------------------------------------
参考
http://gb2013.blog.163.com/blog/static/2173530120102194185512/
------解决方案--------------------------------------------------------
我也是遇到一样的问题,发送AJAX请求下载文件,如果去掉Response.End()就不报堆栈错误,但文件就是下载不下来,下载框都弹不出来。同楼上,改为HttpContext后,一样没效果,求大侠指点~
  相关解决方案