.NET (Polski)

Translation Status:
This article is a localized version of
.NET
. Last translation date: 2024-05-01. You can help to synchronize the translation, if there were
changes
in the English version.
.NET
(wcześniej nazywany .NET Core) to framework oprogramowania FOSS firmy Microsoft dla języków C#, Visual Basic i F#. Został zaprojektowany tak, aby był wieloplatformowy, modułowy i odpowiedni dla nowoczesnych aplikacji, w przeciwieństwie do swojego poprzednika, .NET Framework.
Kod źródłowy .NET jest dostępny pod adresem
dotnet/dotnet
w serwisie GitHub.
Instalacja
Jeśli chcesz uruchamiać tylko aplikacje .NET,
zainstaluj
pakiet
dotnet-runtime
.
Aby tworzyć aplikacje z .NET, zainstaluj również
dotnet-sdk
.
Wreszcie, aby tworzyć dynamiczne strony internetowe, aplikacje i usługi przy użyciu ASP.NET Core, zainstaluj
aspnet-runtime
.
Microsoft zaleca używanie
Visual Studio Code
- IDE opartego na
Electronie
do tworzenia i debugowania aplikacji .NET.
Tip
Dodaj
~/.dotnet/tools
do
PATH
, inaczej narzędzia dotnet nie będą dostępne z poziomu powłoki.
Aby zamiast tego użyć .NET 6.0, należy dodać do powyższego pakietu "-6.0", na przykład
dotnet-runtime-6.0
,
dotnet-sdk-6.0
i
aspnet-runtime-6.0
.
Różnice w wersjach
Zestawy .NET SDK są publikowane w ramach kilku schematów wersji. Tylko wersje SDK
1xx
mogą być budowane ze źródeł i będą dostępne w oficjalnych repozytoriach. Jeśli potrzebujesz innej wersji, będziesz potrzebować jednego z pakietów
*-bin
z AUR.
Ręczna instalacja wielu wersji
Można zainstalować wiele wersji .NET SDK lub środowiska uruchomieniowego obok siebie za pomocą skryptu
dotnet-install.sh
dostarczonego przez .NET Foundation. Dokumentację skryptu można znaleźć
tutaj
.
Na przykład, to polecenie zainstaluje najnowszą wersję znalezioną w kanale "STS" (Standard Term Support) w
/usr/share/dotnet
:
# ./dotnet-install.sh --install-dir /usr/share/dotnet -channel STS -version latest
Możesz najpierw przeprowadzić symulację instalacji, używając flagi
-Dryrun
.
Po zainstalowaniu można zweryfikować dostępne zestawy SDK:
$ dotnet --list-sdks
2.2.108 [/usr/share/dotnet/sdk]
3.0.103 [/usr/share/dotnet/sdk]
$ dotnet --version
3.0.103
Usuwanie wersji zainstalowanej ręcznie
Możesz chcieć usunąć przestarzałe wersje zainstalowane za pomocą
dotnet-install.sh
. Zautomatyzowane narzędzie
.NET Uninstall Tool
nadal nie obsługuje systemu Linux, więc deinstalacja musi zostać przeprowadzona ręcznie.
$ dotnet --list-sdks
5.0.100 [/usr/share/dotnet/sdk]
5.0.102 [/usr/share/dotnet/sdk]
Dezinstalacja sdk:
$ SDK_VERSION="5.0.100"
$ DOTNET_UNINSTALL_PATH="/usr/share/dotnet"
# rm -rf $DOTNET_UNINSTALL_PATH/sdk/$SDK_VERSION
Za pomocą
dotnet-install.sh
instalowany jest również host dotnet i współdzielone pakiety, które mogą wymagać dodatkowego usunięcia w zależności od wydania.
Pełna deinstalacja wersji .NET (sdk, host, współdzielone pakiety):
$ SDK_VERSION="5.0.100"
$ DOTNET_VERSION="5.0.0"
$ DOTNET_UNINSTALL_PATH="/usr/share/dotnet"
# rm -rf $DOTNET_UNINSTALL_PATH/sdk/$SDK_VERSION
# rm -rf $DOTNET_UNINSTALL_PATH/shared/Microsoft.NETCore.App/$DOTNET_VERSION
# rm -rf $DOTNET_UNINSTALL_PATH/shared/Microsoft.AspNetCore.All/$DOTNET_VERSION
# rm -rf $DOTNET_UNINSTALL_PATH/shared/Microsoft.AspNetCore.App/$DOTNET_VERSION
# rm -rf $DOTNET_UNINSTALL_PATH/host/fxr/$DOTNET_VERSION
Instalacja wielu wersji za pośrednictwem AUR
Niektóre pakiety AUR dotnet są przeznaczone do instalacji obok siebie. Potrzebny jest tylko jeden pakiet hosta (
dotnet-host-bin
AUR
lub
dotnet-host
) zawierający narzędzie wiersza poleceń, a obok niego można zainstalować dowolne z dostępnych zestawów SDK i środowisk uruchomieniowych (najnowsze pakiety wszystkich głównych wersji). Lista kompatybilnych pakietów:
dotnet-host-bin
AUR
,
dotnet-runtime-bin
AUR
,
aspnet-runtime-bin
AUR
,
dotnet-sdk-bin
AUR
dotnet-host-preview-bin
AUR
,
dotnet-runtime-preview-bin
AUR
,
aspnet-runtime-preview-bin
AUR
,
dotnet-sdk-preview-bin
AUR
dotnet-runtime-7.0-bin
AUR
,
aspnet-runtime-7.0-bin
AUR
,
dotnet-sdk-7.0-bin
AUR
,
dotnet-runtime-3.0
AUR
,
aspnet-runtime-3.0
AUR
,
dotnet-sdk-3.0
AUR
,
dotnet-runtime-2.2
AUR
,
aspnet-runtime-2.2
AUR
,
dotnet-sdk-2.2
AUR
,
dotnet-sdk-2.2-vs2017
AUR
dotnet-runtime-2.1
AUR
,
aspnet-runtime-2.1
AUR
,
dotnet-sdk-2.1
AUR
Instalacja PowerShell Core
PowerShell Core można również zainstalować jako narzędzie "globalne"
[1]
[2]
.
# dotnet tool install --global PowerShell
aby zaktualizować do bieżącej wersji
# dotnet tool update --global PowerShell
Zobacz także
PowerShell
.
Telemetria
Kompilacja Microsoft .NET SDK domyślnie zbiera dane telemetryczne. Pakiety AUR .NET SDK (warianty
*-bin
) są oparte na kompilacjach .NET firmy Microsoft. Składniki środowiska uruchomieniowego .NET nie zbierają danych telemetrycznych w żadnym scenariuszu.
Kompilacje społecznościowe (w tym te w Arch; począwszy od .NET 7) nie zbierają danych telemetrycznych, zgodnie ze zmianą
w .NET SDK
wprowadzoną przez Red Hat.
Telemetria może być wyłączona przez
ustawienie zmiennej środowiskowej
DOTNET_CLI_TELEMETRY_OPTOUT=1
.
Auto-uzupełnianie
Wszystkie programy dotnet, które używają
System.CommandLine.Parser
do analizowania swoich argumentów, obsługują autouzupełnianie. Włączenie go wymaga jedynie dodania kilku wierszy do pliku
.bashrc
/
.zshrc
. /
.zshrc
, jak opisano w
ich dokumentacji
. Instrukcje dla samodzielnych plików binarnych znajdują się
tutaj
.
Rozwiązywanie problemów
It was not possible to find any compatible framework version
Tłumaczenie: Nie udało się znaleźć żadnej kompatybilnej wersji frameworka
Jeśli pojawi się następujący błąd podczas próby uruchomienia nowo utworzonego projektu, nie trzeba już ustawiać zmiennej
DOTNET_ROOT
, jak opisano w rozwiązaniach różnych problemów GitHub. Pakiet dotnet Archa (od wersji 3.1) instaluje go w zalecanej przez Microsoft lokalizacji
/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
Jest to spowodowane tym, że środowisko uruchomieniowe jest dostarczane jako oddzielny pakiet w Arch. Musisz tylko upewnić się, że masz zainstalowany pakiet
aspnet-runtime
.
"the required library libhostfxr.so could not be found" error
Tłumaczenie: błąd "nie można znaleźć wymaganej biblioteki libhostfxr.so"
Niektóre narzędzia dotnet SDK (na przykład
libman
,
dotnet-watch
itp.) mogą oczekiwać, że zmienna środowiskowa
DOTNET_ROOT
jest wstępnie skonfigurowana. Jeśli tak nie jest, można zaobserwować błąd taki jak ten:
[3]
.
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.
Obejściem jest ręczne wyeksportowanie
DOTNET_ROOT
w powłoce:
~/.bashrc
export DOTNET_ROOT=/opt/dotnet
Error MSB4019: The imported project "/usr/share/dotnet/sdk/.../Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.Common.targets" was not found. Confirm that the expression in the Import declaration ... is correct, and that the file exists on disk.
Tłumaczenie: Błąd MSB4019: Zaimportowany projekt "/usr/share/dotnet/sdk/.../Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.Common.targets" nie został znaleziony. Upewnij się, że wyrażenie w deklaracji importu ... jest poprawne, a plik istnieje na dysku.
Dzieje się tak po aktualizacji. Aktualnie uruchomiona powłoka / sesja logowania przechowuje zmienne środowiskowe dla wersji dotnet SDK innej niż zainstalowana. Ponowne uruchomienie powłoki lub ponowne zalogowanie powinno to naprawić.
SDK specified could not be found
Tłumaczenie: Nie można znaleźć określonego zestawu SDK.
Uważa się, że jest to spowodowane konfliktem między bibliotekami Mono i MSBuild SDK a bibliotekami dotnet. Aby to naprawić, należy ręcznie wyeksportować ścieżkę w powłoce (zastępując numer wersji w razie potrzeby), np:
~/.bashrc
export MSBuildSDKsPath=$( echo /usr/share/dotnet/sdk/3.*/Sdks );
polecenie dotnet nadal zainstalowane
Zainstalowane pakiety nie odinstalowują dotnet-host, więc odinstaluj
dotnet-host
.
Zobacz także
Strona domowa .NET
.NET Foundation
Przeglądarka API .NET