Partilhar via


Escolha uma interface do usuário da Web ASP.NET Core

ASP.NET Core é uma estrutura de interface do usuário completa. Escolha quais funcionalidades combinar que se ajustem às necessidades da interface do usuário da Web do aplicativo.

Para o desenvolvimento de novos projetos, recomendamos ASP.NET Core Blazor.

ASP.NET Núcleo Blazor

Blazor é uma estrutura de interface do usuário da Web de pilha completa e é recomendada para a maioria dos cenários de interface do usuário da Web.

Benefícios de usar Blazor:

  • Modelo de componente reutilizável.
  • Renderização eficiente de componentes baseada em diferenciação.
  • Renderize componentes de forma flexível do servidor ou cliente via WebAssembly.
  • Crie componentes avançados e interativos da interface do usuário da Web em C#.
  • Renderize componentes estaticamente a partir do servidor.
  • Aprimore progressivamente os componentes renderizados do servidor para facilitar a navegação e o tratamento de formulários e habilitar a renderização de streaming.
  • Compartilhe código para lógica comum no cliente e no servidor.
  • Interoperabilidade com JavaScript.
  • Integre componentes com aplicativos baseados em MVC, Razor Pages ou JavaScript existentes.

Para obter uma visão geral completa da arquitetura e dos benefícios, consulte ASP.NET modelos de Blazorhospedagem Core Blazor e ASP.NET CoreBlazor. Para começar a usar seu primeiro Blazor aplicativo, consulte Criar seu primeiro Blazor aplicativo.

ASP.NET páginas principais Razor

Razor Pages é um modelo baseado em página para a criação de interface do usuário da Web renderizada pelo servidor. Razor A interface do usuário das páginas é renderizada dinamicamente no servidor para gerar o HTML e o CSS da página em resposta a uma solicitação do navegador. A página chega ao cliente pronta para ser exibida. O suporte para Razor Pages é baseado no MVC ASP.NET Core.

Razor Benefícios das páginas:

  • Crie e atualize rapidamente a interface do usuário. O código da página é mantido com a página, mantendo as preocupações da interface do usuário e da lógica de negócios separadas.
  • Testável e dimensionável para aplicativos grandes.
  • Mantenha suas páginas ASP.NET Core organizadas de uma maneira mais simples do que ASP.NET MVC:
    • A lógica de exibição específica e os modelos de exibição 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 ASP.NET Core Razor Pages, consulte Tutorial: Introdução Razor ao Pages in ASP.NET Core. Para obter uma visão geral completa de ASP.NET Razor Core Pages, sua arquitetura e benefícios, consulte: Razor Arquitetura e conceitos de páginas no ASP.NET Core.

ASP.NET Core MVC

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 principais de componentes: modelos, exibições e controladores. As solicitações do usuário são roteadas 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 visualização a ser exibida ao usuário e fornece a ele todos os dados do modelo necessários.

ASP.NET principais benefícios do MVC:

  • Baseado em um modelo escalável e maduro para a criação de grandes aplicativos Web.
  • Separação clara das preocupações para a máxima flexibilidade.
  • O modeloView-Controller separação de responsabilidades garante que o modelo de negócios possa evoluir sem estar fortemente acoplado a detalhes de implementação de baixo nível.

Para começar a usar o 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, consulte Visão geral do ASP.NET Core MVC.

ASP.NET Core Single Page Applications (SPA) com tecnologias JavaScript frontend

Crie lógica do lado do cliente para aplicativos ASP.NET Core usando tecnologias JavaScript populares, como Angular, React e Vue. ASP.NET Core fornece modelos de projeto para Angular, React e Vue, e também pode ser usado com outras estruturas JavaScript.

Benefícios do ASP.NET Core SPA com tecnologias JavaScript, além dos benefícios de renderização do cliente listados anteriormente:

  • O ambiente de tempo de execução JavaScript já é fornecido com o navegador.
  • Grande comunidade e ecossistema maduro.
  • Crie lógica do lado do cliente para aplicativos ASP.NET Core usando tecnologias JavaScript populares, como Angular, React e Vue.

Desvantagens:

  • São necessárias mais linguagens, estruturas e ferramentas de codificação.
  • Difícil compartilhar código, então alguma lógica pode ser duplicada.

Para começar, consulte:

Combine várias soluções de interface do usuário da Web: ASP.NET Core MVC ou Razor Pages plus Blazor

MVC, Razor Pages e Blazor fazem parte da estrutura ASP.NET Core e foram projetados para serem usados juntos. Razor componentes podem ser integrados em Razor aplicativos Pages e MVC. Quando uma exibição ou página é renderizada, os componentes podem ser pré-renderizados ao mesmo tempo.

Benefícios para MVC ou Razor Pages plus Blazor, além dos benefícios MVC ou Razor Pages:

  • A pré-renderização executa Razor componentes 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 visualizações ou páginas existentes com o Auxiliar de Tag de Componente.

Para começar a usar o ASP.NET Core MVC ou Razor o Pages plus Blazor, consulte Integrar ASP.NET componentes principais Razor com MVC ou Razor Pages.

Próximos passos

Para obter mais informações, consulte:

ASP.NET Core é uma estrutura de interface do usuário completa. Escolha quais funcionalidades combinar que se ajustem às necessidades da interface do usuário da Web do aplicativo.

ASP.NET Núcleo Blazor

Blazor é uma estrutura de interface do usuário da Web de pilha completa e é recomendada para a maioria dos cenários de interface do usuário da Web.

Benefícios de usar Blazor:

  • Modelo de componente reutilizável.
  • Renderização eficiente de componentes baseada em diferenciação.
  • Renderize componentes de forma flexível do servidor ou cliente via WebAssembly.
  • Crie componentes avançados e interativos da interface do usuário da Web em C#.
  • Renderize componentes estaticamente a partir do servidor.
  • Aprimore progressivamente os componentes renderizados do servidor para facilitar a navegação e o tratamento de formulários e habilitar a renderização de streaming.
  • Compartilhe código para lógica comum no cliente e no servidor.
  • Interoperabilidade com JavaScript.
  • Integre componentes com aplicativos baseados em MVC, Razor Pages ou JavaScript existentes.

Para obter uma visão geral completa da arquitetura e dos benefícios, consulte ASP.NET modelos de Blazorhospedagem Core Blazor e ASP.NET CoreBlazor. Para começar a usar seu primeiro Blazor aplicativo, consulte Criar seu primeiro Blazor aplicativo.

ASP.NET páginas principais Razor

Razor Pages é um modelo baseado em página para a criação de interface do usuário da Web renderizada pelo servidor. Razor A interface do usuário das páginas é renderizada dinamicamente no servidor para gerar o HTML e o CSS da página em resposta a uma solicitação do navegador. A página chega ao cliente pronta para ser exibida. O suporte para Razor Pages é baseado no MVC ASP.NET Core.

Razor Benefícios das páginas:

  • Crie e atualize rapidamente a interface do usuário. O código da página é mantido com a página, mantendo as preocupações da interface do usuário e da lógica de negócios separadas.
  • Testável e dimensionável para aplicativos grandes.
  • Mantenha suas páginas ASP.NET Core organizadas de uma maneira mais simples do que ASP.NET MVC:
    • A lógica de exibição específica e os modelos de exibição 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 ASP.NET Core Razor Pages, consulte Tutorial: Introdução Razor ao Pages in ASP.NET Core. Para obter uma visão geral completa de ASP.NET Razor Core Pages, sua arquitetura e benefícios, consulte: Razor Arquitetura e conceitos de páginas no ASP.NET Core.

ASP.NET Core MVC

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 principais de componentes: modelos, exibições e controladores. As solicitações do usuário são roteadas 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 visualização a ser exibida ao usuário e fornece a ele todos os dados do modelo necessários.

ASP.NET principais benefícios do MVC:

  • Baseado em um modelo escalável e maduro para a criação de grandes aplicativos Web.
  • Separação clara das preocupações para a máxima flexibilidade.
  • O modeloView-Controller separação de responsabilidades garante que o modelo de negócios possa evoluir sem estar fortemente acoplado a detalhes de implementação de baixo nível.

Para começar a usar o 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, consulte Visão geral do ASP.NET Core MVC.

ASP.NET Core Single Page Applications (SPA) com tecnologias JavaScript frontend

Crie lógica do lado do cliente para aplicativos ASP.NET Core usando tecnologias JavaScript populares, como Angular, React e Vue. ASP.NET Core fornece modelos de projeto para Angular, React e Vue, e também pode ser usado com outras estruturas JavaScript.

Benefícios do ASP.NET Core SPA com tecnologias JavaScript, além dos benefícios de renderização do cliente listados anteriormente:

  • O ambiente de tempo de execução JavaScript já é fornecido com o navegador.
  • Grande comunidade e ecossistema maduro.
  • Crie lógica do lado do cliente para aplicativos ASP.NET Core usando tecnologias JavaScript populares, como Angular, React e Vue.

Desvantagens:

  • São necessárias mais linguagens e ferramentas de codificação.
  • Difícil compartilhar código, então alguma lógica pode ser duplicada.

Para começar, consulte:

Escolha uma solução híbrida: ASP.NET Core MVC ou Razor Pages plus Blazor

MVC, Razor Pages e Blazor fazem parte da estrutura ASP.NET Core e foram projetados para serem usados juntos. Razor componentes podem ser integrados em Razor aplicativos Pages e MVC. Quando uma exibição ou página é renderizada, os componentes podem ser pré-renderizados ao mesmo tempo.

Benefícios para MVC ou Razor Pages plus Blazor, além dos benefícios MVC ou Razor Pages:

  • A pré-renderização executa Razor componentes 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 visualizações ou páginas existentes com o Auxiliar de Tag de Componente.

Para começar a usar o ASP.NET Core MVC ou Razor o Pages plus Blazor, consulte Integrar ASP.NET componentes principais Razor com MVC ou Razor Pages.

Próximos passos

Para obter mais informações, consulte: