.NET Core (Português)

Status de tradução:
Esse artigo é uma tradução de
.NET Core
. Data da última tradução: 2020-04-07. Você pode ajudar a sincronizar a tradução, se houver
alterações
na versão em inglês.
.NET Core
é um novo framework de software FOSS da Microsoft para C#, Visual Basic e F#. Ele é projetado para ser multiplataforma, modular e apto para aplicativos modernos, em oposição ao seu predecessor, o .NET Framework.
Instalação
Se você deseja apenas executar aplicativos gerenciados pelo .NET Core,
instale
o pacote
dotnet-runtime
.
Para compilar aplicativos com .NET Core, instale
dotnet-sdk
também.
A Microsoft recomenda usar
Visual Studio Code
, sua IDE FOSS baseada no
Electron
, para compilar & depurar aplicativos .NET Core.
Dica
Adicione
~/.dotnet/tools
to
PATH
, do contrário ferramentas de dotnet não vão funcionar a partir do shell.
Instalar várias versões
Você pode instalar várias versões do .NET Core SDK ou do tempo de execução lado a lado usando o script
dotnet-install.sh
fornecido pelo .NET Foundation. Você pode encontrar a documentação do script
aqui
.
Por exemplo, esse comando instalaria a versão atual encontrada no canal atual
Current
em
/opt/dotnet
:
# ./dotnet-install.sh --install-dir /opt/dotnet -channel Current -version latest
Você pode querer simular a primeira instalação usando a opção
-Dryrun
.
Uma vez instalado, você pode verificar os SDKs disponíveis:
$ dotnet --list-sdks
2.2.108 [/opt/dotnet/sdk]
3.0.100 [/opt/dotnet/sdk]
$ dotnet --version
3.0.100
Telemetria
Telemetria está habilitada por padrão, mas pode ser desabilitada
definindo a variável de ambiente
DOTNET_CLI_TELEMETRY_OPTOUT=1
.
Solução de problemas
Não foi possível encontrar nenhuma versão compatível do framework
Se você receber o seguinte erro ao tentar executar um projeto recém-criado, não precisará mais definir uma variável
DOTNET_ROOT
, conforme descrito nas soluções de vários problemas do github. O pacote dotnet do Arch (a partir de 3.1) o instala no local recomendado pela Microsoft de
/usr/share/dotnet
.
$ dotnet run
It was not possible to find any compatible framework version
The framework 'Microsoft.AspNetCore.App', version '3.1.0' was not found.
  - No frameworks were found.

You can resolve the problem by installing the specified framework and/or SDK.

The specified framework can be found at:
  -
https://aka.ms/dotnet-core-applaunch?framework=Microsoft.AspNetCore.App&framework_version=3.1.0&arch=x64&rid=arch-x64
Isso é causado porque o tempo de execução é enviado como um pacote separado no Arch. Você só precisa garantir que o pacote
aspnet-runtime
também esteja instalado.
Erro "the required library libhostfxr.so could not be found"
Algumas das ferramentas do SDK dotnet (por exemplo,
libman
,
dotnet-watch
etc.) podem esperar que você tenha a variável de ambiente
DOTNET_ROOT
pré-configurada. Se não for, um erro como este pode ser observado:
[1]
A fatal error occurred, the required library libhostfxr.so could not be found.
If this is a self-contained application, that library should exist in [/home/my_user/.dotnet/tools/.store/microsoft.web.librarymanager.cli/1.0.172/microsoft.web.librarymanager.cli/1.0.172/tools/netcoreapp2.1/any/].
If this is a framework-dependent application, install the runtime in the default location [/usr/share/dotnet] or use the DOTNET_ROOT environment variable to specify the runtime location.
A solução é exportar manualmente
DOTNET_ROOT
no seu shell:
~/.bashrc
export DOTNET_ROOT=/opt/dotnet
O SDK especificado não pôde ser encontrado
Acredita-se que isso seja causado por um conflito entre as bibliotecas SDK de Mono e MSBuild e as do dotnet core. Para corrigir isso, exporte o caminho manualmente no seu shell (substituindo o número da versão conforme necessário), por exemplo:
~/.bashrc
export MSBuildSDKsPath=$( echo /usr/share/dotnet/sdk/3.*/Sdks );
Veja também
Site do .NET Core
A Fundação .NET
Navegador de API do .NET