2011-02-10 2 views
12

J'ai un problème avec une syntaxe de rasoir. Je voudrais savoir comment écrire inbetween html .. voir cet exemple ..Razor vue moteur, comment écrire entre html?

<ul> 
    @foreach (var x in Model) { 
     <li> 
      @x.Subject - Tags:&nbsp; 

      @if (x.Tags != null) 
      { 

       foreach (var t in x.Tags) 
       { 
        @t.Name 
       } 
      } 
      else 
      { 
       No tags 
      } 
     </li> 
    } 
</ul> 

je devrais être capable d'écrire « Pas de tags », mais ce ne fonctionne pas ... Aucun tag inclus dans le semblent code (qui est pas ce que je veux

Merci

Répondre

21

Vous devez explicitly tell Razor that you're writing HTML, en écrivant @:No Tags ou <text>No Tags</text>.

+0

Travail. Merci beaucoup. – Rushino

+0

Si vous regardez là: http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx est-il une raison pour laquelle avec l'instruction IF/ELSE vous n'avez pas besoin du champ de texte ? (Aller à la section If-Blocks et Multi-line Statements) – Rushino

+0

@Rushino: L'analyseur reconnaît les balises HTML. Vous avez seulement besoin de ceci pour un balisage non-tag-like. – SLaks

3

le fait d'utiliser le travail tag <texte> Par exemple:.?

<text>No tags</text> 
Questions connexes