“如何修理”;创建控制请求时出错在此上下文中不可用;在ASP.NET C#中?
我有一个解决方案,我可以简单地向其中添加webforms和元素(标签、文本框等),并正确显示所有内容。但是,有些webforms在窗体上的每个元素的设计视图上都显示此错误 我注意到显示此错误的webforms是从BasePage继承的webforms,而不是System.Web.UI.Page 例如“如何修理”;创建控制请求时出错在此上下文中不可用;在ASP.NET C#中?,c#,asp.net,inheritance,webforms,C#,Asp.net,Inheritance,Webforms,我有一个解决方案,我可以简单地向其中添加webforms和元素(标签、文本框等),并正确显示所有内容。但是,有些webforms在窗体上的每个元素的设计视图上都显示此错误 我注意到显示此错误的webforms是从BasePage继承的webforms,而不是System.Web.UI.Page 例如 using System; using System.Data; using System.Web; using System.Web.UI; using System.Web.UI.WebCont
using System;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections.Generic;
namespace Station.Payments
{
public partial class detailsPayment : BasePage
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}
这是我的班级BasePage.cs
using System;
using System.Text;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections.Generic;
using Core;//Custom Library
namespace Station
{
public class BasePage : Page
{
protected override void OnInit(EventArgs e)
{
if (Request.IsAuthenticated)
{
base.OnInit(e);
}
else
{
Session.Abandon();
Response.Redirect("~/Login.aspx");
}
}
public UserLogin CurrentUser
{
get
{
//UserLogin is a class from Core
return (UserLogin)Session["User"];
}
set
{
Session["User"] = value;
}
}
protected StringBuilder DisableButton(object sender, bool isImage, bool blockAll)
{
StringBuilder disableButton = new StringBuilder();
disableButton.Append("if (typeof(Page_ClientValidate) == 'function') { ");
disableButton.Append("if (Page_ClientValidate() == false) { return false; }} ");
disableButton.Append("this.disabled = true;");
if (isImage)
{
disableButton.Append("this.value = 'PROCESSING...';");
disableButton.Append("document.getElementById('" + ((ImageButton)sender).ID + "').disabled = true;");
disableButton.Append("document.getElementById('" + ((ImageButton)sender).ID + "').src = '../images/saveInactive.png';");
disableButton.Append(this.Page.GetPostBackEventReference((ImageButton)sender));
}
else
{
disableButton.Append("document.getElementById('" + ((Button)sender).ID + "').disabled = true;");
disableButton.Append("document.getElementById('" + ((Button)sender).ID + "').value = 'CARGANDO...';");
disableButton.Append(this.Page.GetPostBackEventReference((Button)sender));
}
disableButton.Append(";");
return disableButton;
}
}
}
我已经尝试过去掉其中的一些命令,但是每次我重新构建解决方案时,在从BasePage继承的任何webform上仍然会出现错误
有什么东西影响了网络表单吗?我以前遇到过这种错误。不确定这是否有帮助。我们在我们的基本页面的
OnInit
方法中有这一点:
if(Context != null && Context.Session != null && !Request.IsAuthenticated)
{
Request.Redirect("~/Login.aspx");
}
似乎Context!=null&&Context.Session!=空
part修复了该问题。希望这有帮助。检查是否有帮助