C# 名称为;xxx“;将asp文字名称作为参数发送到其他类时,当前上下文中不存在
当我试图将asp:Literal的名称作为参数发送到另一个类中的函数时,我试图找出为什么会出现此错误 Certificate.aspx.cs:C# 名称为;xxx“;将asp文字名称作为参数发送到其他类时,当前上下文中不存在,c#,asp.net,C#,Asp.net,当我试图将asp:Literal的名称作为参数发送到另一个类中的函数时,我试图找出为什么会出现此错误 Certificate.aspx.cs: login.DisplayLoginError(Company.Web.STSLogin.Common.Utils.LocalizeUtils.GetTranslation("login.unsuccessful", "Host", false), "attention", litMessageCertificate); Login.aspx: &l
login.DisplayLoginError(Company.Web.STSLogin.Common.Utils.LocalizeUtils.GetTranslation("login.unsuccessful", "Host", false), "attention", litMessageCertificate);
Login.aspx:
<asp:Literal ID="litMessageCertificate" runat="server"></asp:Literal>
Login.aspx.cs:
public void DisplayLoginError(string text, string messageType, Literal literal)
{
ClearTextBoxes(); //attention
literal.Text = string.Format("<div id=\"customErrorPanel\" style=\"display : none\" class=\"message {1}\" >{0}</div>", text, messageType);
string javaScriptFunction = "$(function () { $('#customErrorPanel').slideDown('fast'); });";
ClientScript.RegisterStartupScript(this.GetType(), "errorScript", javaScriptFunction, true);
}
public void displayLogin错误(字符串文本、字符串消息类型、文本)
{
ClearTextBox();//注意
Text=string.Format(“{0}”,Text,messageType);
字符串javaScriptFunction=“$(函数(){$('#customErrorPanel')。向下滑动('fast');}”);
RegisterStartupScript(this.GetType(),“errorScript”,javaScriptFunction,true);
}
我得到了一个错误:
名称“litMessageCertificate”在当前上下文中不存在
非常感谢您提供的任何帮助您是否缺少Certificate.aspx中的文本控件(ID=“litMessageCertificate”)?您正在尝试引用那里不存在的对象
这两个页面彼此不了解,因此您无法使用Login.aspx.cs中Certificate.aspx的元素,反之亦然。您是否缺少Certificate.aspx中的文本控件(ID=“litMessageCertificate”)?您正在尝试引用那里不存在的对象
这两个页面彼此不了解,因此您无法使用Login.aspx.cs中Certificate.aspx的元素,反之亦然。看起来您试图在为仅显示证书错误消息而创建的文本控件中显示特定的证书错误消息。如果在Login.aspx中生成一般错误消息文本不是一个选项,则可以将错误类型作为字符串(甚至是整数)传递给Login.aspx,而不是尝试在不同的aspx页面之间传递控件。类似于 (certificate.aspx.cs) (login.aspx.cs)
public void displayLogin错误(字符串文本、字符串消息类型、字符串错误类型)
{
ClearTextBox();//注意
如果(errorType==“错误\证书”){
litMessageCertificate.Text=string.Format(“{0}”,Text,messageType);
字符串javaScriptFunction=“$(函数(){$('#customErrorPanel')。向下滑动('fast');}”);
RegisterStartupScript(this.GetType(),“errorScript”,JavaScriptFunction,true);
}
else{//在不同的文本控件中显示不同的错误消息}
}
看起来您试图在为仅显示证书错误消息而创建的文本控件中显示特定的证书错误消息。如果在Login.aspx中生成一般错误消息文本不是一个选项,则可以将错误类型作为字符串(甚至是整数)传递给Login.aspx,而不是尝试在不同的aspx页面之间传递控件。类似于
(certificate.aspx.cs)
(login.aspx.cs)
public void displayLogin错误(字符串文本、字符串消息类型、字符串错误类型)
{
ClearTextBox();//注意
如果(errorType==“错误\证书”){
litMessageCertificate.Text=string.Format(“{0}”,Text,messageType);
字符串javaScriptFunction=“$(函数(){$('#customErrorPanel')。向下滑动('fast');}”);
RegisterStartupScript(this.GetType(),“errorScript”,JavaScriptFunction,true);
}
else{//在不同的文本控件中显示不同的错误消息}
}
您似乎忘记在Certificate.aspx中包含文本控件。检查设计器,看看它是否在那里。您似乎忘记在Certificate.aspx中包含文本控件。检查一下设计师,看看它是否在那里。
login.DisplayLoginError(Company.Web.STSLogin.Common.Utils.LocalizeUtils.GetTranslation("login.unsuccessful", "Host", false), "attention", "ERROR_CERTIFICATE");
public void DisplayLoginError(string text, string messageType, string errorType)
{
ClearTextBoxes(); //attention
if(errorType == "ERROR_CERTIFICATE"){
litMessageCertificate.Text = string.Format("<div id=\"customErrorPanel\"style=\"display : none\" class=\"message {1}\" >{0}</div>", text, messageType);
string javaScriptFunction = "$(function () {$('#customErrorPanel').slideDown('fast'); });";
ClientScript.RegisterStartupScript(this.GetType(), "errorScript",JavaScriptFunction, true);
}
else{//display a different error message in a different literal control}
}