我在服务器类下得到一个红色下划线:
Server.Transfer("~/PostEdit.aspx");
错误是:
无法通过嵌套类型“AnswerQuestion.ThreadTable”访问外部类型“System.Web.UI.Page”的非静态成员
AnswerQuestion 是部分类,ThreadTable 是我制作的自定义类。
我在服务器类下得到一个红色下划线:
Server.Transfer("~/PostEdit.aspx");
错误是:
无法通过嵌套类型“AnswerQuestion.ThreadTable”访问外部类型“System.Web.UI.Page”的非静态成员
AnswerQuestion 是部分类,ThreadTable 是我制作的自定义类。
您不在Page
实例内部,因此您无权访问该Server
属性,这是Server
HTTP 上下文中该属性的快捷方式。
使用静态Current
属性获取当前页面的上下文:
HttpContext.Current.Server.Transfer("~/PostEdit.aspx");
HttpContext.Current.Handler
HttpContext.Current.Request.Server.Transfer
Context.Handler
是 的一个实例HttpContext
。
HttpContext
在属性下公开请求的 CURRENT 实例HttpContext.Current
,但是当前上下文也可以HTTPHandlers
在 ProcessRequest 方法中传递:
void ProcessRequest(HttpContext context)
该异常清楚地表明您正在访问类中的非静态成员。它与 Server.Transfer() 无关。