2010-11-11 5 views
22

Donc, question simple vraiment. :)Syntaxe du rasoir ASP.NET MVC 3 - Coulée

J'ai eu ce code suivant avec ASPX Voir Engine:

<strong><%: ((City)Model.Location).Name %></strong> 

Ce qui rend Los Angeles

Si je le fais avec Razor Voir Engine:

<strong>@((City)Model.Location).Name</strong> 
          ^
          | 
syntax highlighting stops here 

Il rend ceci:

(nom de l'objet vraiment énorme doit être .toString) .Nom

Ainsi, la mise en avant écrétage emplacement), et il est le traitement du code .Nom i have (qui est une propriété sur un objet City) en tant que HTML pur.

Pourquoi considère-t-il le ) comme la fin du bloc de code Razor?

Des idées?

Aussi - y a-t-il une référence Razor qui a toute la syntaxe/mots-clés? (Il m'a fallu un certain temps pour comprendre que <% Import Namespace est @using avec Razor).

Merci les gars!

+2

@Downvoter - soin d'expliquer pourquoi? – RPM1984

Répondre

40

Est-ce que <strong>@(((City)Model.Location).Name)</strong> fonctionne? Je pense qu'il pense que l'expression contenue dans @() est fermée.

+0

Haha, ouais ça marche. À votre santé. En cas de doute, ajoutez un autre support. :) Acceptera votre réponse dans 7 minutes. :) – RPM1984

+0

En ce qui concerne les docs, je n'ai encore rien vu d'officiel. Le blog de Gu est probablement le meilleur endroit actuellement http://weblogs.asp.net/scottgu/archive/2010/10/19/asp-net-mvc-3-new-model-directive-support-in-razor.aspx –

+0

Oui, lisez ça. Oui, nous avons vraiment besoin d'une source définitive. J'ai fondamentalement deviné la déclaration @using. :) – RPM1984

10

En outre, pour la lecture un peu plus facile ...

<strong>@((Model.Location as City).Name)</strong>