Yuna y = new Yuna();
y.P1();
y.P2();
你这个 y 是没有经过ASP.NET初始化的,所以没有关联 HttpContext 。
一般 Page 实例都不应该由用户创建。ASP.NET创建Page后,会调用它的一个内部的方法ProcessRequest并且把HttpContext传进去的。你没有那一步,所以不行。
(二)实例2:
using System;
namespace Txl
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
public class Fail:System.Web.UI.Page
{
public void HtmlInfo()
{
Response.Write("sadf");
}
}
}
在另一页中调用
private void Page_Load(object sender, System.EventArgs e)
{
Fail f=new Fail();
f.HtmlInfo();
//Response.Write(x);// 在此处放置用户代码以初始化页面
}
响应在此上下文中不可用。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Web.HttpException: 响应在此上下文中不可用。
源错误:
行 10: public void HtmlInfo()
行 11: {
行 12: Response.Write("sadf");
行 13: }
行 14: }
--------------------------------------------------------------------
解决方案:
只有你的页面是ASP.NET调用的,你的Page类里的Response对象才有意义。
如果你需要在你自己的类里调用Response,请用System.Web.HttpContext.Current.Response。
- 本文标题: ASP.NET 响应在此上下文中不可用 错误
- 文章分类:【.NET/Web】
- 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.