2010-10-21 1 views
0

Это последние три недели работает над тем, что я разрабатываю это приложение, и почему-то решил прекратить работать пять минут назад, несмотря на то, что я ничего не делал.ASP.NET: Внезапно имя «form1» не существует в текущем контексте?

В Default.aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AppName.Default" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html"; charset=utf-8 /> 
    <title></title> 

    <script>(A bunch of script declarations, etc) 

</head> 
<body> 
    <form id="form1" runat="server"> 
    </form> 
</body> 
</html> 

В Default.aspx.cs:

public partial class Default : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     System.Web.UI.HtmlControls.HtmlGenericControl g = new System.Web.UI.HtmlControls.HtmlGenericControl(); 

     //(Dynamically builds a load of html to insert into the form) 

     form1.Controls.Add(g); 
    } 
} 

я вдруг получаю ошибку компилятора «Имя 'Form1' не существует в текущем контекст ", несмотря на то, что, по-видимому, не внес никаких изменений ни в один из этих файлов. Intellisense, похоже, не видит его нигде, из любой области внутри файла.

Есть ли у кого-нибудь идеи, почему?

ответ

0

Проблема, не имеющая runat = «сервер» в объявлении главы, которую я, должно быть, изменил около двух недель назад, и визуальная студия каким-то образом не смогли решить проблему до сегодняшнего дня, несмотря на несколько полных перестроек проекта. Типичная Microsoft.

1

проверить, что form1 существует в файле конструктора (default.aspx.designer.cs), как я подозреваю, его не хватает

1

В меню Построить в VS, попробуйте запустить «Очистить решение», а затем построить.