Étiquette n'existent pas dans le contexte actuel
pourquoi m que j'obtiens ce message d'erreur "Le nom de "lblHelloWorld" n'existe pas dans le contexte actuel"? Comment puis-je résoudre ce problème?
<%@ Page Language="C#" AutoEventWireup="True" Inherits="_Default" Codebehind="Default.aspx.cs" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Hello, world!</title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="MainScriptManager" runat="server" />
<asp:UpdatePanel ID="pnlHelloWorld" runat="server">
<ContentTemplate>
<asp:Label runat="server" ID="lblHelloWorld" Text="Click the button!" />
<br /><br />
<asp:Button runat="server" ID="btnHelloWorld" OnClick="btnHelloWorld_Click" Text="Update label!" />
</ContentTemplate>
</asp:UpdatePanel>
</form>
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace ajaxTesting
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnHelloWorld_Click(object sender, EventArgs e)
{
lblHelloWorld.Text = "Hello, world - this is a fresh message from ASP.NET AJAX! The time right now is: " + DateTime.Now.ToLongTimeString();
}
}
}
J'ai essayé de nettoyage et de rebuliding; la suppression de la designer.cs fichier et de le recréer, mais n'est d'aucune utilité.
- Et si vous placez l'Étiquette à l'extérieur de l'UpdatePanel, ça fonctionne?
- non il ne marche pas encore
- La accepté de répondre à ici aussi à résoudre votre problème?
- pas de. lorsque j'essaie d'exécuter la page aspx il est dit-- Un nom a commencé avec un caractère non valide. Erreur de traitement de la ressource 'file:///D:/AspPractice/ajaxTesting/ajaxTesting/Def... <%@ Page Language="C#" AutoEventWireup="True" Inherits="_Default" Codebehind="par Défaut.aspx.cs" %>
- de vérifier la réponse encore une fois , je l'ai montée.
Vous devez vous connecter pour publier un commentaire.
Je pense que le problème dans votre
designer.cs
fichier.Essayez d'ajouter une référence manuellement pour cette étiquette dans le concepteur.cs fichier.EDIT:
Le problème après la révision de votre code est en
name space
.Pour résoudre votre problème::
Remplacer votre ligne par ceci:
La Meilleure solution possible serait:
<body> and </body>
aspx
page dans votre projet.<body>
tag avec celle que vous avez copié.cs
fichier aussi.Je sens cela devrait résoudre votre problème.
Étape 1:
Copier sur le aspx formulaire, le code-behind et concepteur de fichiers et de re-créer à nouveau le formulaire en copiant et collant.
Étape 2:
Si l'étape 1 ne résout pas le problème: Dans visual Studio, cliquez sur Edition -> Rechercher et Remplacer -> Rechercher dans les Fichiers et la recherche dans votre projet pour un contrôle avec le même nom.
Étape 3
Fermer Visual Studio et tous les navigateurs. Temporairement arrêter IIS et accédez à la temp ASP.NET dossier de fichiers (le chemin peut être différent sur votre machine):
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Fichiers
Commencer la suppression de tout à partir du dossier de site ici, en commençant par le bas (parce que vous pouvez obtenir ACL dossier de restrictions d'autorisation).
Redémarrez IIS et essayez à nouveau (après avoir essayé une ou deux étapes précédentes).
Une autre possibilité que j'ai eu:
Si vous dupliquez le .cs fichier, par exemple: doublon "par Défaut.aspx.cs", de la "valeur par Défaut.aspx - Copie.cs" (vous avez maintenant les deux fichiers dans le même dossier),
le résultat sera: le fichier apparaît dans la liste du fichier projet. Même en excluant le fichier copié sur le projet, mais laissez le fichier dans le même dossier ne résoudra pas le problème.
Afin d'éviter ce problème, supprimez le fichier copié sur le projet dossiers.
J'ai eu ce problème après l'importation des fichiers source de quelqu'un d'autre. Après un certain temps, j'ai découvert que je n'ai pas un concepteur.cs fichier.
J'ai suivi cette solution. En particulier la partie sur "Convertir à l'Application Web". Qui a fait le tour pour moi!
J'ai été confronté à ce même problème dans asp.net site web (3.5) Dans mon cas, il y avait 2 copies du même fichier.
J'exclus le n ° 2 fichier à partir du site web et il a travaillé pour moi.
J'ai complètement supprimé de l'apex fichier un re-créé et à gauche, nom de l'objet _Default. J'ai alors entrepris d'adapter le code C# en conséquence et le tour est joué, il a travaillé sur OK. C'est en travaillant avec ASP.NET 3.5 dans VS2008. Dans ce cas, je l'ai eu à travailler, mais il y a toujours quelque chose de funky sur VS2008 ou ce ne serait pas nécessaire.