Skip to content

Latest commit

 

History

History
160 lines (109 loc) · 10.9 KB

index.md

File metadata and controls

160 lines (109 loc) · 10.9 KB
title author description ms.author ms.custom ms.date uid ms.openlocfilehash ms.sourcegitcommit ms.translationtype ms.contentlocale ms.lasthandoff ms.locfileid
Introdução ao ASP.NET Core
rick-anderson
Obtenha uma introdução ao ASP.NET Core, uma estrutura de software livre, plataforma cruzada e alto desempenho para a criação de aplicativos modernos conectados à Internet e baseados em nuvem.
riande
mvc
04/07/2019
index
ec2b5b72eeff21d183397284b0d538681282d45b
47cc13ab90913af9a2887cef0896bb4e9aba4dd5
HT
pt-BR
06/26/2019
67399156

Introdução ao ASP.NET Core

Por Daniel Roth, Rick Anderson e Shaun Luttin

O ASP.NET Core é uma estrutura de software livre, de multiplaforma e alto desempenho para a criação de aplicativos modernos conectados à Internet e baseados em nuvem. Com o ASP.NET Core, você pode:

  • Compilar aplicativos e serviços Web, aplicativos IoT e back-ends móveis.
  • Usar suas ferramentas de desenvolvimento favoritas no Windows, macOS e Linux.
  • Implantar na nuvem ou local.
  • Executar no .NET Core ou no .NET Framework.

Por que escolher o ASP.NET Core?

Milhões de desenvolvedores usaram (e continuam usando) o ASP.NET 4.x para criar aplicativos Web. O ASP.NET Core é uma reformulação do ASP.NET 4.x, com alterações de arquitetura que resultam em uma estrutura mais enxuta e modular.

[!INCLUDE]

Compilar APIs Web e uma interface do usuário da Web usando o ASP.NET Core MVC

O ASP.NET Core MVC fornece recursos que ajudam você a compilar APIs Web e aplicativos Web:

  • O padrão MVC (Model-View-Controller) ajuda a tornar as APIs Web e os aplicativos Web testáveis.
  • O Razor Pages é um modelo de programação baseado em página que torna mais fácil e produtiva a criação da interface do usuário da Web.
  • A marcação Razor fornece uma sintaxe produtiva para Páginas Razor e as Exibições do MVC.
  • Os Auxiliares de Marcação permitem que o código do servidor participe da criação e renderização de elementos HTML em arquivos do Razor.
  • O suporte interno para vários formatos de dados e negociação de conteúdo permite que as APIs Web alcancem uma ampla gama de clientes, incluindo navegadores e dispositivos móveis.
  • O model binding mapeia automaticamente os dados de solicitações HTTP para os parâmetros de método de ação.
  • A Validação de Modelos executa automaticamente a validação no lado do cliente e do servidor.

Desenvolvimento do lado do cliente

O ASP.NET Core integra-se perfeitamente com estruturas conhecidas do lado do cliente e bibliotecas, incluindo Blazor, Angular, React e Bootstrap. Para obter mais informações, confira xref:blazor/index e os tópicos relacionados em Desenvolvimento do lado do cliente.

ASP.NET Core direcionado para o .NET Framework

O ASP.NET Core 2.x pode ser direcionado para o .NET Core ou ao .NET Framework. Os aplicativos do ASP.NET Core direcionados ao .NET Framework não são multiplataforma,— são executados somente no Windows. Em geral, o ASP.NET Core 2.x é composto de bibliotecas do .NET Standard. As bibliotecas gravadas com .NET Standard 2.0 podem ser executadas em qualquer plataforma .NET que implemente o .NET Standard 2.0.

O ASP.NET Core 2.x dá suporte para as versões do .NET Framework que implementam o .NET Standard 2.0:

  • É altamente recomendável usar a versão mais recente do .NET framework.
  • .NET Framework 4.6.1 e versões posteriores.

O ASP.NET Core 3.0 e posterior somente executará no .NET Core. Para obter mais detalhes sobre essa alteração, confira A first look at changes coming in ASP.NET Core 3.0 (Uma primeira análise das alterações no ASP.NET Core 3.0).

Há várias vantagens em direcionar para o .NET Core, e essas vantagens aumentam com cada versão. Algumas vantagens do .NET Core em relação ao .NET Framework incluem:

  • Multiplataforma. É executado no Windows, no Linux e no macOS.
  • Desempenho aprimorado
  • Controle de versão lado a lado
  • Novas APIs
  • Código Aberto

Estamos trabalhando duro para diminuir a diferença de API entre o .NET Framework e o .NET Core. O Pacote de Compatibilidade do Windows disponibilizou milhares de APIs exclusivas do Windows no .NET Core. Essas APIs não estavam disponíveis no .NET Core 1.x.

Caminho de aprendizado recomendado

Recomendamos a seguinte sequência de tutoriais e artigos para obter uma introdução ao desenvolvimento de aplicativos ASP.NET Core:

  1. Siga um tutorial para o tipo de aplicativo que você deseja desenvolver ou manter:

    Tipo de aplicativo Cenário Tutorial
    Aplicativo Web Para novo desenvolvimento Introdução a Páginas do Razor
    Aplicativo Web Para manter um aplicativo MVC Introdução ao MVC
    API Web Criar uma API Web*
    Aplicativo em tempo real Introdução ao SignalR
  2. Siga um tutorial que mostra como fazer o acesso a dados básicos:

    Cenário Tutorial
    Para novo desenvolvimento Razor Pages com o Entity Framework Core
    Para manter um aplicativo MVC MVC com o Entity Framework Core
  3. Leia uma visão geral dos recursos do ASP.NET Core que se aplicam a todos os tipos de aplicativo:

    • Conceitos básicos
  4. Pesquise no Sumário outros tópicos de interesse.

* Há um novo tutorial de API Web que você segue totalmente no navegador, sem necessidade de instalação local do IDE. O código é executado em um Azure Cloud Shell e curl é usado para teste.

Como baixar uma amostra

Muitos dos artigos e tutoriais incluem links para exemplos de código.

  1. Baixe o arquivo zip do repositório ASP.NET.
  2. Descompacte o arquivo Docs-master.zip.
  3. Use a URL no link de exemplo para ajudá-lo a navegar até o diretório de exemplo.

Diretivas do pré-processador no código de exemplo

Para demonstrar vários cenários, os aplicativos de exemplo usam as instruções C# #define e #if-#else/#elif-#endif para compilar e executar diferentes seções de código de exemplo de forma seletiva. Para esses exemplos que usam essa abordagem, defina a instrução #define na parte superior dos arquivos C# para o símbolo associado ao cenário que deseja executar. Alguns exemplos podem exigir que você defina o símbolo na parte superior de vários arquivos para executar um cenário.

Por exemplo, a seguinte lista de símbolo #define indica que quatro cenários estão disponíveis (um cenário por símbolo). A configuração da amostra atual executa o cenário TemplateCode:

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

Para alterar a amostra que executará o cenário ExpandDefault, defina o símbolo ExpandDefault e deixe os símbolos restantes comentados de fora:

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

Para obter mais informações sobre como usar diretivas de pré-processador C# para compilar seletivamente as seções de código, consulte #define (Referência C#) e #if (Referência C#) .

Regiões no código de exemplo

Alguns aplicativos de exemplo contém seções de código cercadas pelas instruções C# #region e #endregion. O sistema de build de documentação injeta essas regiões nos tópicos renderizados da documentação.

Os nomes das regiões geralmente contêm a palavra "snippet". O exemplo a seguir mostra uma região chamada snippet_FilterInCode:

#region snippet_FilterInCode
WebHost.CreateDefaultBuilder(args)
    .UseStartup<Startup>()
    .ConfigureLogging(logging =>
        logging.AddFilter("System", LogLevel.Debug)
            .AddFilter<DebugLoggerProvider>("Microsoft", LogLevel.Trace))
            .Build();
#endregion

O snippet de código C# precedente é referenciado no arquivo de markdown do tópico com a seguinte linha:

[!code-csharp[](sample/SampleApp/Program.cs?name=snippet_FilterInCode)]

Você pode ignorar (ou remover) com segurança as instruções #region e #endregion que envolvem o código. Não altere o código dentro dessas instruções se você planeja executar os cenários de exemplo descritos no tópico. Fique à vontade para alterar o código ao experimentar com outros cenários.

Para obter mais informações, veja Contribuir para a documentação do ASP.NET: snippets de código.

Próximas etapas

Para obter mais informações, consulte os seguintes recursos:

  • xref:getting-started
  • xref:tutorials/publish-to-azure-webapp-using-vs
  • Conceitos básicos do ASP.NET Core
  • O Community Standup semanal do ASP.NET aborda o progresso e os planos da equipe. Ele apresenta o novo software de terceiros e blogs.