名称" Label1"在当前上下文中不存在

时间:2014-12-03 12:44:03

标签: asp.net webforms

我在Visual Studio中遇到一个奇怪的问题,我无法从代码隐藏页面引用控件。

举一个非常简单的例子,我的页面是这样的:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="New.aspx.cs" Inherits="ITDashboard.idea.New" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
</head>
<body>
    <form id="form1" runat="server">
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    </form>
</body>
</html>

我的代码隐藏是这样的:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace ITDashboard.idea
{
    public partial class New : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Label1.Text = "hello";

        }
    }
}

该应用程序名为ITDashboard,此页面位于名为“idea”的文件夹中。

环顾四周,有些帖子建议删除设计器文件并重新创建它。但是,VS2012中没有我能看到的选项。另外,即使在站点根目录,我也会在新的空白页面上收到相同的错误。

4 个答案:

答案 0 :(得分:1)

我还没有足够的积分来添加评论,所以请在答案框中原谅这条评论!

我之前见过这个。 &#34;这&#34; = VS不向设计器文件添加控件。从我能够找到的,它只是页面中的腐败。或者,如果它发生在所有页面上,那就是项目的损坏。你没有做任何事情导致它,所以你将来无法做任何事情来避免它。幸运的是,在与各种版本的VS合作13年多的时间里,我只见过它两三次。

安德鲁钉了它。如果问题与此页面隔离,则创建一个新页面并一次复制一个控件的损坏页面。如果它在项目层面(听起来像是这样),你还有一些工作要做。

以下是关于如何从腐败项目中恢复的好建议:

How can I recover a corrupt .csproj file in Visual Studio 2010?

祝你好运!

答案 1 :(得分:1)

如果有人有相同的话,我会发帖。

我看到的所有网络帖子都指向&#34;转换为网络应用程序&#34; (现在在VS2013的Project下)。然而,这对我来说并不适合。

最后通过更改.net Framework类型(任意为4.5)来实现它。然后我重新运行转换为Web应用程序选项,它重新创建了designer.cs文件。

此外,我添加的任何新控件现在都会自动添加到designer.cs。

答案 2 :(得分:0)

如果您正在加倍设置Label1的文本...将Label1.text更改为Label1.Text。

答案 3 :(得分:-2)

严重性代码描述项目文件行抑制状态 错误CS0103当前上下文ConsoleApplication6中不存在名称“ label1”