天天看點

[轉]asp.net Request、Response 響應在此上下文中不可用

  這個問題一般是在頁面中使用了Respons.Write()方法,雖然是繼承了System.Web.UI.Page。但System.Web.UI.Page下的Response隻有在asp.net頁面裡才有意義,若要使用請用System.Web.HttpContext.Current.Response

  編譯過程未提示錯誤,但是運作後出現 System.Web.HttpException: 響應在此上下文中不可用;将Request.Cookies[name]和Response.Cookies.Add(cook)改成HttpContext.Current.Request.Cookies[name]和HttpContext.Current.Response.Cookies.Add(cook)即恢複正常。

  

  解釋:Page中的Response,Request隻能在頁面檔案中使用(盡管上文定義的是Cookdef :Page,但隻是作為普通類使用),而HttpContext可以在任何情況下使用,可擷取目前的上下文資料。

來源:http://fengruochen966.blog.163.com/blog/static/1124440292011410115747361/