Pourquoi Razor n'aime pas ça?
Ive a obtenu un méga problème ennuyeux que j'ai vue avec:
@{
if(ViewBag.Section == "Home")
{
<div id="headerfrontPage">
}
else
{
<div id="header">
}
}
Et j'ai une erreur de compilation:
Le bloc de code est absent d'une clôture "}". Assurez-vous que vous avez
un correspondant de "}" caractère pour tous les "{" caractères à l'intérieur de ce bloc,
et qu'aucun de ces "}" où les personnages sont interprétés comme des marques.
Comment puis-je conditionnellement à écrire un div? Ses pour un hack bascially...
source d'informationauteur Exitos | 2011-11-07
Vous devez vous connecter pour publier un commentaire.
Je soupçonne que c'est parce que votre divs ne sont pas fermées, afin de rasoir suppose que l'accolade de fermeture est en fait partie de la div contenu.
Vous pouvez essayer de la transmission de la totalité de la div de contenu au sein de votre code, y compris la balise de fermeture, ou la sortie de la balise div avec une Réponse.Écrire, ou quelque chose de similaire, donc il n'y a aucune confusion de balisage.
EDIT: aussi, peut-être en joignant votre balise div dans un
peut être vaut la peine d'essayer.
Vous pouvez utiliser la même construction jusqu'à ce que vous enveloppez de votre div à l'intérieur de l'élément comme:
Ou vous pouvez utiliser la syntaxe razor @: comme
Mais pour votre situation actuelle, je préfère Ron Sijm la solution:
Vous pouvez essayer ceci:
Je ne sais pas si ça va aider, un long shot. Mais, au moins, de l'omi, qui a l'air mieux...
Essayez ceci:
La façon la plus simple d'écrire ce serait:
Ou, si vous préférez, vous pouvez utiliser une variable locale:
Qui concerne le cas plus général des balises non fermées dans les blocs de code Razor, vous pouvez marquer explicitement la balise d'ouverture que le contenu: