当前上下文中不存在该名称

66

所以,我在我的笔记本电脑和台式电脑之间进行这个项目。

项目在笔记本电脑上运行良好,但现在将更新后的源代码复制到台式电脑上后,项目中出现了500多个错误,所有这些错误都是...

名称“”在当前上下文中不存在

以下是一个例子...

Jobs.aspx

<%@ Page Title="" Language="C#" MasterPageFile="~/Members/Members.master" AutoEventWireup="true" CodeFile="Jobs.aspx.cs" Inherits="Members_Jobs" %>

<%@ Register Namespace="AjaxControlToolkit" Assembly="AjaxControlToolkit" TagPrefix="aj" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    <asp:UpdatePanel runat="server" ID="upJobs">
        <ContentTemplate>
            <!-- page content goes here -->
        </ContentTemplate>
    </asp:UpdatePanel>
</asp:Content>

Jobs.aspx.cs

public partial class Members_Jobs : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            loadJobs();
            gvItems.Visible = false;
            loadComplexes();
            loadBusinesses();
            loadSubcontractors();
            loadInsurers();

            pnlCallback.Visible = false;
            pnlInsurer.Visible = false;
        }
    }

    // more goes down here
}

这是 designer.cs 文件的示例...

namespace stman.Members {


    public partial class Jobs {

        /// <summary>
        /// upJobs control.
        /// </summary>
        /// <remarks>
        /// Auto-generated field.
        /// To modify move field declaration from designer file to code-behind file.
        /// </remarks>
        protected global::System.Web.UI.UpdatePanel upJobs;
    }
}
我知道这个错误意味着被引用的控件通常不存在或者不是引用它的类的一部分,但就我所看到的来说,在这里似乎不是这种情况。 有人能提供一些见解吗? VS2012 Screenshot

你在 designer.cs 文件中看到实例变量了吗? - Serge
事实上,我不仅需要页面上所有控件的定义,还需要它们的实际应用。 - Ortund
1
你将会有一个 Designer.cs 文件。删除它并重新生成。 - Bharadwaj
@SecretSquirrel 那么应该选哪一个呢?我认为设计师文件需要在它们的类定义中加上 Members_ - Ortund
如果@Ortund在这个问题上仍然遇到困难,我建议你像Bharadwaj建议的那样删除设计文件。然后,在解决方案资源管理器中,右键单击页面,有一个选项类似于“转换为Web应用程序”,这将重新生成您的设计文件。 - Squirrel5853
显示剩余3条评论
16个回答

0

我也遇到了同样的问题,我的项目显示了许多错误。我从同事那里复制了一些造成问题的dll文件,并将它们复制到另一个文件夹中,然后从我的项目中删除了这些dll文件,并从新位置再次添加它们的引用,这解决了问题。


0

我也遇到了类似的问题。原因是我在 .aspx 页面中进行了更改,但没有在设计师页面中进行更改,因此出现了上述错误。当在设计师页面中创建引用后,我就能够构建解决方案了。


0

我遇到了这个问题,发现用于调试的几个文件共享了相同的CodeFile和Inherits值。将它们更改为唯一的值解决了我的问题。


0
在这种情况下的第一步是尝试执行build -> clean solution
有时,VS会因为自己的项目输出而感到困惑。
清理解决方案会删除VS之前构建的代码。
它不会删除bin/obj目录本身,而是这些文件夹中的输出文件。

0
我曾经遇到过同样的问题,在myform.aspx.cs中的命名空间末尾加上".forms"后,问题得以解决。就像这样:
namespace YourProgramName.forms

0
当我不小心在主页面的顶部指令前添加了一些文本时,我的项目中包含的所有页面上的控件都显示为“当前上下文不存在”。在花费了很多时间在论坛和自我分析之后,我找到了错误添加的文本并将其删除,但问题并没有得到解决。然后我不得不单击每个错误以打开相关页面,以便VS可以加载页面并识别它,一旦代码在VS中加载,那些特定页面的错误就开始消失了,因为VS已经识别了它。对于我来说,单击每个错误,在VS编辑器中加载每个页面就解决了问题,而且您只需要这样做一次,因为稍后它将被VS自动识别。我想说这是Visual Studio的一个小故障。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接