Entender quando e por que usar Razor Pages
Nesta unidade, você aprenderá quando e por que usar Razor Pages para seu aplicativo ASP.NET Core.
Os benefícios do Razor Pages
O Razor Pages é um modelo de programação do lado do servidor, centrado em páginas, para a criação de interfaces do usuário da Web com o ASP.NET Core. Os benefícios incluem:
- Configuração fácil para aplicativos Web dinâmicos usando HTML, CSS e C#.
- Arquivos organizados por recurso para facilitar a manutenção.
- Combina a marcação com código C# do lado do servidor usando a sintaxe Razor.
O Razor Pages usa Razor para inserir código baseado no servidor em páginas da Web. A sintaxe Razor combina HTML e C# para definir a lógica de renderização dinâmica. Isso significa que você pode usar variáveis e métodos C# em sua marcação HTML para gerar conteúdo da Web dinâmico no servidor em runtime. É importante entender que o Razor Pages não substitui o HTML, o CSS ou o JavaScript, mas combina essas tecnologias para criar conteúdos dinâmicos na Web.
Separação de interesses
O Razor Pages impõe a separação de preocupações com uma classe PageModel
C#, encapsulando propriedades de dados e operações lógicas com escopo para sua página Razor e definindo manipuladores de página para solicitações HTTP. A classe PageModel
é uma classe parcial gerada automaticamente pelo modelo de projeto ASP.NET Core. A classe PageModel
está localizada na pasta Pages
e tem o nome da página Razor. Por exemplo, a classe PageModel
da página Razor Index.cshtml
é denominada IndexModel.cs
.
Quando usar Razor Pages
Use o Razor Pages em seu aplicativo ASP.NET Core quando você:
- Deseja gerar a interface do usuário da Web dinâmica.
- Prefere uma abordagem focada na página.
- Deseja reduzir a duplicação com exibições parciais.
O Razor Pages simplifica a organização de páginas ASP.NET Core mantendo páginas relacionadas e sua lógica juntas no próprio namespace e diretório.
Observação
O ASP.NET Core também dá suporte ao padrão MVC (Model-View-Controller) para a criação de aplicativos Web. Use o MVC quando você preferir uma separação clara entre Modelo, Exibição e Controlador. Tanto o Razor Pages quanto o MVC podem coexistir no mesmo aplicativo. O MVC não está no escopo deste módulo.
Na próxima unidade, você fará um tour por um aplicativo Razor Pages.