Sintaxe do ASP.NET MVC 3 Razor


Nesse post vou mostrar alguns exemplos da diferença da sintaxe do Razor no ASP.NET MVC 3 em relação ao ASP.NET WebForms


        
        
        
ComandoRazorWebForm
Bloco de Código

@{

  int x = 123;

  string y = "Olá Mundo.";

}

<%

  int x = 123;

  string y = "Olá Mundo.";

%>

Expressão (HTML)<span>
@model.Message
</span>

<span>

<%: model.Message %>

</span>

 

Expressão<span>
@Html.Raw(model.Message)
</span>

<span>

<%= model.Message %>

</span>

Combinado Texto com códigos

@foreach(var item in items) {

  <span>@item.Prop</span>

}

<% foreach(var item in items) { %>

  <span><%: item.Prop %></span>

<% } %>

Mesclando Códigos com tags HTML

@if (foo) {

  <text>Texto</text>

}

<% if (foo) { %>

  Texto

<% } %>

Endereço de emailOlá sidnei@gmail.com

Razor reconhece o formato de e-mail básico e não é inteligente o suficiente para tratar o @ como um delimitador de código

Expressões explícitas<span>ISBN@(isbnNumber)</span>

Neste caso, é preciso ser explícito sobre a expressão usando parênteses.

 

Encapsulando @

<span>In Razor, you use the

@@foo to display the value

of foo</span>

@ @ @ transforma em um único na resposta
Comentários do lado do Servidor

@*

Esse e o lado do servidor

Com múltiplos comentários 


*@

<%--

Esse e o lado do servidor

Com múltiplos comentários 

--%>

Mesclando expressões e textosOlá @titulo. @nome.

Olá <%: titulo %>. <%: nome %>.


Esses são alguns dos exemplos de comparação dessa poderosa linguagem (Razor), quem vem revolucionando a forma de desenvolvimento, junto ao ASP.NET MVC 3, em relação ao antigo ASP.NET WebForm.

Aproveite e ganhe muita produtividade usando MVC 3 e Razor, na desenvolvimento de suas aplicações, 

até a próxima.