错误CS0103:当前上下文中不存在名称“txtReferralCode”

时间:2012-09-12 20:50:24

标签: c# asp.net

我准备把头发拉出来了。我正在VS2010中的ASP.NET 2.0网站上工作,我收到你在标题中看到的错误。只有在我尝试发布网站时才会出现该错误。如果我只是右键单击它所在的aspx文件并单击“在浏览器中查看”,它就可以正常工作。如果我从VS2010以调试模式运行文件,它也可以正常工作。代码中还有其他asp控件可以正常工作,但无论出于何种原因,我添加的控件都存在问题。

以下是一些相关代码:

C#:

public partial class ApplicationScreen1Hold : System.Web.UI.Page
{
....
    protected void Page_Load(object sender, EventArgs e)
    {
    ....
         if (Request.QueryString["SID"] != null) //this is existing code
         {
             hdnSID.Value =  Request.QueryString["SID"].ToString().Trim();
          }
         if (Request.QueryString["RID"] != null) //this is my new code
         {
             txtReferralCode.Text = Request.QueryString["RID"];
         }
    ....
    }
}

HTML:

<td style="padding-left:25px">
    <label>Referral Code
         <asp:TextBox ID="txtReferralCode" runat="server" MaxLength="8"></asp:TextBox>
    </label>
</td>

在c#代码中,我在上面一行中显示了如何访问同一表单中的其他输入之一,没有任何问题。 html中的文本框控件我从页面上的另一个文本框中获得了副本,并更改​​了id并删除了classonkeyup事件,因为它们不需要。

我是否有可能需要定义文本框,我还没有找到它为其他控件执行的操作,或者我可能错过了其他内容?

我已经查看了引用此错误代码的其他问题,但没有一个能够帮助我。

1 个答案:

答案 0 :(得分:0)

删除与* .aspx文件关联的设计器文件。右键单击* .aspx文件,然后单击“转换为Web应用程序”。它将创建一个* .aspx.designer.cs的设计器文件,该文件必须包含您在.aspx文件中使用的所有控件。 确保使用正确的名称,即* .aspx.designer.cs和* .aspx.cs控件位于同一名称空间中。