Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo

Esse artigo introduz o que é e como utilizar o Razor, o mais novo View Engine do ASP.NET MVC 3, que surge para simplificar a construção de páginas ASP.NET, utilizando uma linguagem única para a codificação das páginas, seja em C# ou VB.NET

Em que situação o tema é útil

O Razor surge no ASP.NET MVC 3, trazendo o novo conceito de View Engine, que nada mais é do que um template que implementa uma sintaxe diferente para a construção das páginas Web em ASP.NET, tornando a codificação das web pages muito mais simples e dinâmica. O Razor é uma opção a mais para a construção de páginas Web, simplificando ainda mais a codificação da camada de interface. Ele é especialmente útil em aplicações ASP.NET MVC3, onde se busca um código limpo e uniforme em toda a aplicação.

ASP.NET MVC 3 com Razor

Razor é o nome dado ao novo View Engine do ASP.NET, que foi introduzido na terceira versão do ASP.NET MVC. O Razor nada mais é do que a linguagem C#, ou VB.NET, trabalhando em conjunto com código HTML, para a construção das suas páginas ASP.NET. Até então, a forma comum de se “codificar” páginas ASP.NET, era através de tags da própria linguagem ASP.NET, que caracterizavam os arquivos com extensão .aspx. Essa continua sendo uma forma válida de se criar páginas ASP.NET, e o Razor surge como uma alternativa a esse antigo View Engine. Esse artigo irá descrever como funciona o Razor no ASP.NET MVC 3.

O ASP.NET MVC introduziu o conceito de View Engines, que são como módulos plugáveis, que implementam diferentes opções de sintaxes para a codificação de páginas ASP.NET. A View Engine padrão, ou a mais conhecida, é a sintaxe ASP.NET, que surgiu desde a primeira versão do ASP.NET Web Forms, e está presente até hoje. São as páginas com extensão .aspx, os User Controls com extensão .ascx, e as Master Pages, com extensão .master.

Além dessa View Engine, o ASP.NET MVC permite a utilização de templates de terceiros, em substituição a essa sintaxe padrão. As duas View Engines de terceiros mais populares são o Spark e o NHaml. Na seção de links desse artigo estão os sites oficiais desses dois templates.

A ideia por trás da maioria dos View Engines para ASP.NET, é tornar o código das páginas mais “fluido”, e compatível com a própria linguagem HTML, e isso também vale para os já citados Spark e o NHaml.

O Razor é a nova View Engine que foi introduzida no ASP.NET MVC 3. E com ele a Microsoft também propõe uma forma de se construir páginas Web, muito mais limpa e compatível com o HTML.

Nota do DevMan:

MVC (Model – View – Controller)

O padrão MVC é um padrão muito popular no desenvolvimento de aplicações Web, principalmente no meio do software livre, mas que nos últimos ganhou espaço na plataforma .NET, com o ASP.NET MVC. A primeira vez que se falou de MVC foi em 1979, quando Trygve Reenskaug, então funcionário da Xerox que trabalhava no projeto do SmallTalk, introduziu a ideia deste padrão. Mas foi na Web que o MVC se popularizou, principalmente na comunidade do software livre.

O MVC propõe que a aplicação seja dividida em três partes:

Model: é a camada responsável por manter o estado dos dados. No Model temos uma representação em Objetos dos dados do database. Por exemplo, podemos ter no Model uma classe Produtos que irá representar os dados da tabela Produtos do banco de dados.

View: é a camada responsável por exibir os dados ao usuário. É basicamente a interface da aplicação, e em uma aplicação ASP.NET a interface pode ser uma página ou controle de usuário. Como exemplo podemos ter uma página Produtos.aspx que terá os controles necessários para exibir e editar os dados de um objeto da classe Produto.

Controller: esta camada é responsável por gerenciar a interação com o usuário final, manipulando a camada Model, e até definindo qual View será utilizada para exibir a interface ao usuário. Em uma aplicação MVC, a camada View é usada apenas para a exibição dos dados, é o Controller que responde às entradas e interações do usuário.

O MVC foi muito adotado na comunidade Java, mas também vem ganhando grande espaço na plataforma .NET. Não é à toa que o ASP.NET MVC Framework já está na sua terceira versão, e uma quarta já está sendo planejada.

Objetivos do Razor

O Razor possui uma série de características, que o tornam uma escolha natural para a construção de páginas ASP.NET MVC, a partir da versão 3. A primeira característica ressaltada pela equipe de desenvolvimento do Razor, é que ele foi desenhado para ser “Compacto, expressivo e fluído”. A ideia: reduzir ao máximo o número de caracteres necessários para a codificação de uma página.

O View Engine Default do ASP.NET (aspx), é conhecido por possuir uma sintaxe parecida com a do HTML, com abertura e fechamento de tags. No Razor não temos isso, reduzindo, portanto, a quantidade de texto necessário para a codificação de determinado controle, ou “parte” da página Web.

...
Quer ler esse conteúdo completo? Tenha acesso completo