C# Asp控件在当前上下文中不存在
我一直在重命名我的aspx项目中的某些类和包,现在出现以下错误: “类型'\u Default'已使用 相同的参数类型“ 我有两个aspx页面。在default.aspx codebehind中,我看到: Default.aspx:C# Asp控件在当前上下文中不存在,c#,asp.net,C#,Asp.net,我一直在重命名我的aspx项目中的某些类和包,现在出现以下错误: “类型'\u Default'已使用 相同的参数类型“ 我有两个aspx页面。在default.aspx codebehind中,我看到: Default.aspx: <%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inheri
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeBehind="Default.aspx.cs" Inherits="_Default" %>
search.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="search.aspx.cs" Inherits="_Default" %>
现在,我在这里试图解决这个问题的方法是访问另一个分部类部分,并从中删除页面加载方法的定义。
我遵循的步骤是:
- **1-暂时重命名错误的页面加载方法
- 在正文中键入默认值并按F12。现在在这之后 尝试,我的错误消失了,但我所有的控件 文本框等似乎不在当前上下文中。请帮助 在这方面,我很高兴。谢谢**
public partial class Search : System.Web.UI.Page
声明显然需要更新:
<%@ ... Inherits="Search" %>
否则,您将有冲突的类型。您在search.aspx中的部分类定义应更改为
公共部分类\u搜索:System.Web.UI.Page
它会给你这个错误,因为方法同时在两个不同的页面中定义如果你查看两个页面后面的代码,它们实际上是用关键字
\u Default
类“扩展”的,并且它们两次定义页面加载
方法
在search.aspx code behind中,您应该声明search
类:
public partial class search: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e) {...}
}
search.aspx.cs中的类应按惯例命名为
\u search
。非特殊单词不需要下划线。你说得对。我很抱歉,在查看定义时习惯性地键入。
<%@ ... Inherits="Search" %>
public partial class search: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e) {...}
}