Debuggen des Fehlers „.controlname‘ existiert nicht“ in ASP.NET
Dieser häufige ASP.NET-Fehler äußert sich häufig in einem plötzlichen Funktionsverlust, bei dem IntelliSense von Visual Studio keine Steuerelemente mehr erkennt, was zu Meldungen wie „‚Label1‘ ist im aktuellen Kontext nicht vorhanden.“ führt.
Das Problem:
Das zugrunde liegende Problem ist normalerweise das fehlende runat="server"
-Attribut in den HTML-Elementen Ihrer ASPX-Seite. Dieses Attribut ist wichtig für den Zugriff auf diese Elemente als Variablen in Ihrem C#-Code-Behind.
Lösungen:
Hinzufügen runat="server"
: Untersuchen Sie sorgfältig die HTML-Tags der betroffenen Steuerelemente in Ihrer ASPX-Datei. Stellen Sie sicher, dass das Tag jedes Steuerelements das Attribut runat="server"
enthält, um den serverseitigen Zugriff zu ermöglichen.
Erstellen Sie die Designer-Datei neu: Suchen Sie im Projektmappen-Explorer die Datei „.aspx.designer.cs“, die mit der problematischen ASPX-Seite verknüpft ist. Löschen Sie diese Datei (aber behalten die Datei „.aspx.cs“, die Ihren C#-Code enthält).
Webanwendungskonvertierung: Klicken Sie mit der rechten Maustaste auf die ASPX-Datei oder verwenden Sie das Projektmenü, um „In Webanwendung konvertieren“ auszuwählen. Dadurch wird die Designerdatei neu generiert und spiegelt die aktualisierten HTML-Attribute wider.
Weitere Fehlerbehebung:
Das obige ist der detaillierte Inhalt vonWarum zeigt meine ASP.NET-Anwendung den Fehler „‚Steuername' ist im aktuellen Kontext nicht vorhanden' an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!