Escolher uma interface do usuário da Web do ASP.NET Core
O ASP.NET Core é uma estrutura de interface do usuário completa. Escolha quais funcionalidades se ajustam às necessidades da interface do usuário da Web do aplicativo.
Para o desenvolvimento de novos projetos, recomendamos ASP.NET Core Blazor.
ASP.NET Core Blazor
Blazor é uma estrutura de interface do usuário da Web de pilha completa que é recomendada para a maioria dos cenários de interface do usuário da Web.
Benefícios do uso de Blazor:
- Modelo de componente reutilizável.
- Renderização eficiente de componentes baseado em diferenciação.
- Renderização de componentes com flexibilidade do servidor ou do cliente por meio do WebAssembly.
- Criação de componentes de interface do usuário da Web interativos avançados em C#.
- Renderização de componentes estaticamente do servidor.
- Aprimoramento progressivo dos componentes renderizados do servidor para navegação e tratamento de formulários mais suaves e para habilitar a renderização de streaming.
- Compartilhamento de código para lógica comum no cliente e no servidor.
- Interoperabilidade com JavaScript.
- Integração de componentes com aplicativos existentes baseados em MVC, Razor Pages ou JavaScript.
Para uma visão geral completa do Blazor, sua arquitetura e seus benefícios, confira ASP.NET Core Blazor e modelos de hospedagem do ASP.NET Core Blazor. Para começar com seu primeiro aplicativo Blazor, consulte Criar seu primeiro aplicativo Blazor.
Razor Pages do ASP.NET Core
O Razor Pages é um modelo baseado em página para a criação da interface do usuário da Web renderizada no servidor. A interface do usuário de páginas Razor é renderizada dinamicamente no servidor para gerar HTML e CSS da página em resposta a uma solicitação do navegador. A página chega ao cliente pronta para exibição. O suporte para o Razor Pages é compilado no ASP.NET Core MVC.
Benefícios do Razor Pages:
- Compilar e atualizar rapidamente a interface do usuário. O código da página é mantido com a página, mantendo os interesses da interface do usuário e da lógica de negócios separados.
- Testável e dimensiona para aplicativos grandes.
- Mantenha suas páginas do ASP.NET Core organizadas de maneira mais simples do que o ASP.NET MVC:
- Os modelos de exibição e lógica específicos podem ser mantidos juntos em seu próprio namespace e diretório.
- Grupos de páginas relacionadas podem ser mantidos em seu próprio namespace e diretório.
Para começar a usar seu primeiro aplicativo Razor Pages do ASP.NET Core, consulte Tutorial: Introdução ao Razor Pages no ASP.NET Core. Para obter uma visão geral completa do Razor Pages no ASP.NET Core, sua arquitetura e benefícios, consulte: Introdução ao Razor Pages no ASP.NET Core.
ASP.NET Core MVC
O ASP.NET Core MVC renderiza a interface do usuário no servidor e usa um padrão de arquitetura MVC (Model-View-Controller). O padrão MVC separa um aplicativo em três grupos de componentes principais: modelos, exibições e controladores. As solicitações do usuário são roteada para um controlador. O controlador é responsável por trabalhar com o modelo para executar ações do usuário ou recuperar resultados de consultas. O controlador escolhe a exibição a ser exibida para o usuário e fornece-a com os dados do modelo solicitados.
Benefícios do ASP.NET Core MVC:
- Baseado em um modelo escalonável e maduro para compilação de aplicativos Web grandes.
- Separação de interesses clara com a máxima flexibilidade.
- A separação de responsabilidades do Model-View-Controller garante que o modelo de negócios possa evoluir sem ter um acoplamento rígido com detalhes de implementação de nível inferior.
Para começar a usar ASP.NET Core MVC, consulte Introdução ao ASP.NET Core MVC. Para obter uma visão geral da arquitetura e dos benefícios do ASP.NET Core MVC, confira Visão geral do ASP.NET Core MVC.
SPA (Aplicativos de Página Única) do ASP.NET Core com estruturas JavaScript no front-end
Crie lógica do lado do cliente para aplicativos ASP.NET Core usando estruturas JavaScript populares, como Angular, React e Vue. O ASP.NET Core fornece modelos de projeto para Angular, React e Vue, e também pode ser usado com outras estruturas de JavaScript.
Benefícios de ASP.NET Core SPA com Estruturas JavaScript, além dos benefícios de renderização do cliente listados anteriormente:
- O ambiente de runtime do JavaScript já é fornecido com o navegador.
- Grande comunidade e ecossistema maduro.
- Crie lógica do lado do cliente para aplicativos ASP.NET Core usando estruturas JS populares, como Angular, React e Vue.
Desvantagens:
- Mais linguagens de codificação, estruturas e ferramentas necessárias.
- É difícil compartilhar código para que alguma lógica possa ser duplicada.
Para começar. confira:
- Criar um aplicativo ASP.NET Core com o Angular
- Criar um aplicativo ASP.NET Core com o React
- Criar um aplicativo ASP.NET Core com o Vue
- JavaScript e TypeScript no Visual Studio
Combinar várias soluções de interface do usuário da Web: ASP.NET Core MVC ou Razor Pages mais Blazor
MVC, Razor Pages e Blazor fazem parte da estrutura do ASP.NET Core e foram projetados para serem usados juntos. RazorComponentes podem ser incorporados aosRazoraplicativos Pages e MVC. Componentes podem ser pré-renderizados ao mesmo tempo após a renderização da exibição ou página.
Benefícios para MVC ou Razor Pages mais Blazor, além dos benefícios do MVC ou do Razor Pages:
- A pré-renderização executa componentes Razor no servidor e os renderiza em uma exibição ou página, o que melhora o tempo de carregamento percebido do aplicativo.
- Adicione interatividade a exibições ou páginas existentes com o Auxiliar de Marca de Componente.
Para começar a usar o ASP.NET Core MVC ou Razor o Pages plus Blazor, consulte Integrar componentes principais Razor do ASP.NET com o MVC ou Razor o Pages.
Próximas etapas
Para obter mais informações, consulte:
O ASP.NET Core é uma estrutura de interface do usuário completa. Escolha quais funcionalidades se ajustam às necessidades da interface do usuário da Web do aplicativo.
ASP.NET Core Blazor
Blazor é uma estrutura de interface do usuário da Web de pilha completa que é recomendada para a maioria dos cenários de interface do usuário da Web.
Benefícios do uso de Blazor:
- Modelo de componente reutilizável.
- Renderização eficiente de componentes baseado em diferenciação.
- Renderização de componentes com flexibilidade do servidor ou do cliente por meio do WebAssembly.
- Criação de componentes de interface do usuário da Web interativos avançados em C#.
- Renderização de componentes estaticamente do servidor.
- Aprimoramento progressivo dos componentes renderizados do servidor para navegação e tratamento de formulários mais suaves e para habilitar a renderização de streaming.
- Compartilhamento de código para lógica comum no cliente e no servidor.
- Interoperabilidade com JavaScript.
- Integração de componentes com aplicativos existentes baseados em MVC, Razor Pages ou JavaScript.
Para uma visão geral completa do Blazor, sua arquitetura e seus benefícios, confira ASP.NET Core Blazor e modelos de hospedagem do ASP.NET Core Blazor. Para começar com seu primeiro aplicativo Blazor, consulte Criar seu primeiro aplicativo Blazor.
Razor Pages do ASP.NET Core
O Razor Pages é um modelo baseado em página para a criação da interface do usuário da Web renderizada no servidor. A interface do usuário de páginas Razor é renderizada dinamicamente no servidor para gerar HTML e CSS da página em resposta a uma solicitação do navegador. A página chega ao cliente pronta para exibição. O suporte para o Razor Pages é compilado no ASP.NET Core MVC.
Benefícios do Razor Pages:
- Compilar e atualizar rapidamente a interface do usuário. O código da página é mantido com a página, mantendo os interesses da interface do usuário e da lógica de negócios separados.
- Testável e dimensiona para aplicativos grandes.
- Mantenha suas páginas do ASP.NET Core organizadas de maneira mais simples do que o ASP.NET MVC:
- Os modelos de exibição e lógica específicos podem ser mantidos juntos em seu próprio namespace e diretório.
- Grupos de páginas relacionadas podem ser mantidos em seu próprio namespace e diretório.
Para começar a usar seu primeiro aplicativo Razor Pages do ASP.NET Core, consulte Tutorial: Introdução ao Razor Pages no ASP.NET Core. Para obter uma visão geral completa do Razor Pages no ASP.NET Core, sua arquitetura e benefícios, consulte: Introdução ao Razor Pages no ASP.NET Core.
ASP.NET Core MVC
O ASP.NET Core MVC renderiza a interface do usuário no servidor e usa um padrão de arquitetura MVC (Model-View-Controller). O padrão MVC separa um aplicativo em três grupos de componentes principais: modelos, exibições e controladores. As solicitações do usuário são roteada para um controlador. O controlador é responsável por trabalhar com o modelo para executar ações do usuário ou recuperar resultados de consultas. O controlador escolhe a exibição a ser exibida para o usuário e fornece-a com os dados do modelo solicitados.
Benefícios do ASP.NET Core MVC:
- Baseado em um modelo escalonável e maduro para compilação de aplicativos Web grandes.
- Separação de interesses clara com a máxima flexibilidade.
- A separação de responsabilidades do Model-View-Controller garante que o modelo de negócios possa evoluir sem ter um acoplamento rígido com detalhes de implementação de nível inferior.
Para começar a usar ASP.NET Core MVC, consulte Introdução ao ASP.NET Core MVC. Para obter uma visão geral da arquitetura e dos benefícios do ASP.NET Core MVC, confira Visão geral do ASP.NET Core MVC.
SPA (Aplicativos de Página Única) do ASP.NET Core com estruturas JavaScript no front-end
Crie lógica do lado do cliente para aplicativos ASP.NET Core usando estruturas JavaScript populares, como Angular, React e Vue. O ASP.NET Core fornece modelos de projeto para Angular, React e Vue, e também pode ser usado com outras estruturas de JavaScript.
Benefícios de ASP.NET Core SPA com Estruturas JavaScript, além dos benefícios de renderização do cliente listados anteriormente:
- O ambiente de runtime do JavaScript já é fornecido com o navegador.
- Grande comunidade e ecossistema maduro.
- Crie lógica do lado do cliente para aplicativos ASP.NET Core usando estruturas JS populares, como Angular, React e Vue.
Desvantagens:
- Mais linguagens de codificação, estruturas e ferramentas necessárias.
- É difícil compartilhar código para que alguma lógica possa ser duplicada.
Para começar. confira:
- Criar um aplicativo ASP.NET Core com o Angular
- Criar um aplicativo ASP.NET Core com o React
- Criar um aplicativo ASP.NET Core com o Vue
- JavaScript e TypeScript no Visual Studio
Escolha uma solução híbrida: ASP.NET Core MVC ou Razor Pages mais Blazor
MVC, Razor Pages e Blazor fazem parte da estrutura do ASP.NET Core e foram projetados para serem usados juntos. RazorComponentes podem ser incorporados aosRazoraplicativos Pages e MVC. Componentes podem ser pré-renderizados ao mesmo tempo após a renderização da exibição ou página.
Benefícios para MVC ou Razor Pages mais Blazor, além dos benefícios do MVC ou do Razor Pages:
- A pré-renderização executa componentes Razor no servidor e os renderiza em uma exibição ou página, o que melhora o tempo de carregamento percebido do aplicativo.
- Adicione interatividade a exibições ou páginas existentes com o Auxiliar de Marca de Componente.
Para começar a usar o ASP.NET Core MVC ou Razor o Pages plus Blazor, consulte Integrar componentes principais Razor do ASP.NET com o MVC ou Razor o Pages.
Próximas etapas
Para obter mais informações, consulte: