Installera .NET i Windows

I den här artikeln får du lära dig hur du installerar .NET i Windows. .NET består av körningen och SDK:et. Körningen används för att köra en .NET-app och kan ingå i appen. SDK används för att skapa .NET-appar och -bibliotek. .NET-CLR installeras alltid med SDK.

Den senaste versionen av .NET är 8.0.

Det finns två typer av versioner som stöds: versioner av långsiktig support (LTS) och STS-versioner (Standard Term Support). Kvaliteten på alla utgåvor är densamma. Den enda skillnaden är supportens längd. LTS-versioner får kostnadsfri support och korrigeringar i tre år. STS-versioner får kostnadsfri support och korrigeringar i 18 månader. Mer information finns i .NET-supportprincip.

I följande tabell visas supportstatus för varje version av .NET (och .NET Core):

✔️ Stöds ❌ Unsupported
8 (LTS) 5
7 (STS) 3.1
6 (LTS) 3,0
2.1
2.0
1,1
1.0

Installera med Windows Package Manager (winget)

Du kan installera och hantera .NET via Windows Package Manager-tjänsten med hjälp av winget-verktyget . Mer information om hur du installerar och använder winget finns i Använda winget-verktyget.

Om du installerar .NET systemomfattande installerar du med administratörsbehörighet.

Installera SDK:n

Med .NET SDK kan du utveckla appar med .NET. Om du installerar .NET SDK behöver du inte installera motsvarande körningar. Kör följande kommando för att installera .NET SDK:

winget install Microsoft.DotNet.SDK.8

Installera körningen

Det finns tre olika .NET-körningar som du kan installera, men du bör installera både .NET Desktop Runtime och ASP.NET Core Runtime för maximal kompatibilitet med alla typer av .NET-appar. I följande tabell beskrivs vad som ingår i varje körning:

Innehåller .NET Runtime Innehåller .NET Desktop Runtime Innehåller ASP.NET Core Runtime
.NET Runtime Ja No Nej
.NET Desktop Runtime Ja Ja Nej
ASP.NET Core Runtime Nej No Ja

Följande lista innehåller information om varje körning tillsammans med winget-kommandona för att installera dem:

  • .NET Desktop Runtime

    Den här körningen stöder Windows Presentation Foundation (WPF) och Windows Forms-appar som har skapats med .NET. Detta är inte samma sak som .NET Framework, som medföljer Windows. Den här körningen omfattar .NET Runtime, men inkluderar inte ASP.NET Core Runtime, som måste installeras separat.

    winget install Microsoft.DotNet.DesktopRuntime.8
    
  • .NET-körning

    Det här är baskörningen och innehåller bara de komponenter som behövs för att köra en konsolapp. Vanligtvis installerar du både .NET Desktop Runtime och ASP.NET Core Runtime i stället för den här.

    winget install Microsoft.DotNet.Runtime.8
    
  • ASP.NET Core Runtime

    Den här körningen kör webbserverappar och tillhandahåller många webbrelaterade API:er. ASP.NET Core Runtime kan du köra appar som har skapats med .NET som inte angav körningen. Du måste installera .NET Runtime utöver den här körningen. Följande kommandon installerar ASP.NET Core Runtime i terminalen och kör följande kommandon:

    winget install Microsoft.DotNet.AspNetCore.8
    

Du kan installera förhandsversioner av körningarna genom att ersätta versionsnumret, till exempel 6, med ordet Preview. I följande exempel installeras förhandsversionen av .NET Desktop Runtime:

winget install Microsoft.DotNet.DesktopRuntime.Preview

Installera tillsammans med Visual Studio Code

Visual Studio Code är en kraftfull och enkel källkodsredigerare som körs på skrivbordet. Visual Studio Code är tillgängligt för Windows, macOS och Linux.

Visual Studio Code levereras inte med ett automatiserat .NET Core-installationsprogram som Visual Studio, men det är enkelt att lägga till .NET Core-stöd.

  1. Ladda ned och installera Visual Studio Code.
  2. Ladda ned och installera .NET SDK.
  3. Installera C#-tillägget från Visual Studio Code Marketplace.

Tillägget C# För Visual Studio Code innehåller den senaste .NET SDK och du behöver inte installera någon .NET-körning separat.

Installera med Windows Installer

Det finns tre olika .NET-körningar som du kan installera, men du bör installera både .NET Desktop Runtime och ASP.NET Core Runtime för maximal kompatibilitet med alla typer av .NET-appar. I följande tabell beskrivs vad som ingår i varje körning:

Innehåller .NET Runtime Innehåller .NET Desktop Runtime Innehåller ASP.NET Core Runtime
.NET Runtime Ja No Nej
.NET Desktop Runtime Ja Ja Nej
ASP.NET Core Runtime Nej No Ja

Med .NET SDK kan du skapa .NET-appar och alla körningar.

Nedladdningssidan för .NET innehåller körbara Windows Installer-filer.

Om du vill installera .NET tyst, till exempel i en produktionsmiljö eller för att stödja kontinuerlig integrering, använder du följande växlar:

  • /install
    Installerar .NET.

  • /quiet
    Förhindrar att användargränssnitt och uppmaningar visas.

  • /norestart
    Suppresses any attempts to restart.

dotnet-sdk-8.0.100-win-x64.exe /install /quiet /norestart

Mer information finns i Kommandoradsalternativ för standardinstallationsprogrammet.

Dricks

Installationsprogrammet returnerar en slutkod på 0 för att lyckas och en slutkod på 3010 för att indikera att en omstart krävs. Alla andra värden är vanligtvis en felkod.

Installera med PowerShell-automatisering

Skripten för dotnet-install används för CI-automatisering och icke-administratörsinstallationer av körningen. Du kan ladda ned skriptet från referenssidan för dotnet-install-skriptet.

Skriptet installerar som standard den senaste lts-versionen (long term support), som är .NET 8. Du kan välja en specifik version genom att ange växeln Channel . Inkludera växeln Runtime för att installera en körning. Annars installerar skriptet SDK: et.

Följande kommando installerar både Desktop- och ASP.NET Core-körningen för maximal kompatibilitet.

dotnet-install.ps1 -Channel 8.0 -Runtime windowsdesktop
dotnet-install.ps1 -Channel 8.0 -Runtime aspnetcore

Installera SDK genom att utelämna växeln -Runtime . Växeln -Channel anges i det här exemplet till STS, som installerar den senaste Standard Term Support-versionen, som är .NET 7.

dotnet-install.ps1 -Channel STS

Installera med Visual Studio

Om du använder Visual Studio för att utveckla .NET-appar beskriver följande tabell den lägsta nödvändiga versionen av Visual Studio baserat på målversionen av .NET SDK.

.NET SDK-version Visual Studio-version
8 Visual Studio 2022 version 17.8 eller senare.
7 Visual Studio 2022 version 17.4 eller senare.
6 Visual Studio 2022 version 17.0 eller senare.
5 Visual Studio 2019 version 16.8 eller senare.
3.1 Visual Studio 2019 version 16.4 eller senare.
3,0 Visual Studio 2019 version 16.3 eller senare.
2,2 Visual Studio 2017 version 15.9 eller senare.
2.1 Visual Studio 2017 version 15.7 eller senare.

Om du redan har Visual Studio installerat kan du kontrollera din version med följande steg.

  1. Öppna Visual Studio.
  2. Välj Hjälp>om Microsoft Visual Studio.
  3. Läs versionsnumret från dialogrutan Om .

Visual Studio kan installera den senaste .NET SDK och körningen.

Mer information finns i versionshantering för .NET SDK, MSBuild och Visual Studio.

Välj en arbetsbelastning

När du installerar eller ändrar Visual Studio väljer du en eller flera av följande arbetsbelastningar, beroende på vilken typ av program du skapar:

  • Arbetsbelastningen för plattformsoberoende utveckling i .NET Core i avsnittet Andra verktygsuppsättningar .
  • Arbetsbelastningen ASP.NET och webbutveckling i avsnittet Webb och moln .
  • Arbetsbelastningen Azure-utveckling i avsnittet Webb och moln .
  • Arbetsbelastningen för .NET-skrivbordsutveckling i avsnittet Skrivbord och mobil .

Windows Visual Studio 2019 with .NET Core workload

Versioner som stöds

Följande tabell är en lista över .NET-versioner som stöds för närvarande och vilka versioner av Windows de stöds på. Dessa versioner stöds fortfarande tills antingen versionen av .NET når supportens slut eller tills versionen av Windows når slutet av livslängden.

Windows 10-versioners slutdatum segmenteras efter utgåva. Endast utgåvorna Home, Pro, Pro Education och Pro for Workstations beaktas i följande tabell. Mer information finns i faktabladet för Windows-livscykeln.

Dricks

En + symbol representerar den lägsta versionen.

Operativsystem .NET 8 .NET 7 .NET 6
Windows 11 ✔️ ✔️ ✔️
Windows Server 2022 ✔️ ✔️ ✔️
Windows Server, version 1903 eller senare ✔️ ✔️ ✔️
Windows 10, version 1607 eller senare ✔️ ✔️ ✔️
Windows 8.1 ✔️
Windows 7 SP1 ESU ✔️
Windows Server 2019
Windows Server 2016
Windows Server 2012 R2
Windows Server 2012
✔️ ✔️ ✔️
Windows Server Core 2012 R2 ✔️ ✔️ ✔️
Windows Server Core 2012 ✔️ ✔️ ✔️
Nano Server, version 1809+ ✔️ ✔️ ✔️
Nano Server, version 1803

Mer information om operativsystem, distributioner och livscykelprinciper som stöds av .NET 8 finns i .NET 8-versioner som stöds.

Versioner som inte stöds

Följande versioner av .NET stöds ❌ inte längre:

  • .NET 5
  • .NET Core 3.1
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Verifiera nedladdade binärfiler

När du har laddat ned ett installationsprogram kontrollerar du att filen inte har ändrats eller skadats. Du kan kontrollera kontrollsumman på datorn och sedan jämföra den med vad som rapporterades på nedladdningswebbplatsen.

När du laddar ned ett installationsprogram eller en binär fil från en officiell nedladdningssida visas kontrollsumman för filen. Välj knappen Kopiera för att kopiera kontrollsummavärdet till Urklipp.

The .NET download page with checksum

Du kan använda PowerShell eller kommandotolken för att verifiera kontrollsumman för filen som du har laddat ned. Följande kommando rapporterar till exempel kontrollsumman för filen dotnet-sdk-8.0.100-win-x64.exe :

> certutil -hashfile dotnet-sdk-8.0.100-win-x64.exe SHA512
SHA512 hash of dotnet-sdk-8.0.100-win-x64.exe:
248acec95b381e5302255310fb9396267fd74a4a2dc2c3a5989031969cb31f8270cbd14bda1bc0352ac90f8138bddad1a58e4af1e56cc4a1613b1cf2854b518e
CertUtil: -hashfile command completed successfully.
> (Get-FileHash .\dotnet-sdk-8.0.100-win-x64.exe -Algorithm SHA512).Hash
248acec95b381e5302255310fb9396267fd74a4a2dc2c3a5989031969cb31f8270cbd14bda1bc0352ac90f8138bddad1a58e4af1e56cc4a1613b1cf2854b518e

Jämför kontrollsumman med värdet som tillhandahålls av nedladdningswebbplatsen.

Använd PowerShell och en kontrollsummafil för att verifiera

Viktig information om .NET innehåller en länk till en checksumfil som du kan använda för att verifiera den nedladdade filen. Följande steg beskriver hur du laddar ned checksum-filen och validerar en .NET-installationsbinär fil:

  1. Sidan viktig information för .NET 8 på GitHub på https://github.com/dotnet/core/tree/main/release-notes/8.0 innehåller ett avsnitt med namnet Versioner. Tabellen i det avsnittet länkar till nedladdningar och kontrollsummor för varje .NET 8-version:

    The github release notes version table for .NET

  2. Välj länken för den version av .NET som du laddade ned. I föregående avsnitt användes .NET SDK 8.0.100, som finns i .NET 8.0.0-versionen.

    Dricks

    Om du inte är säker på vilken .NET-version som innehåller din checksumfil kan du utforska länkarna tills du hittar den.

  3. På versionssidan kan du se .NET Runtime- och .NET SDK-versionen och en länk till kontrollsummafilen:

    The download table with checksums for .NET

  4. Kopiera länken till checksum-filen.

  5. Använd följande skript, men ersätt länken för att ladda ned lämplig kontrollsummafil:

    Invoke-WebRequest https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt -OutFile 8.0.0-sha.txt
    
  6. Med både checksum-filen och .NET-versionsfilen nedladdad till samma katalog söker du i checksum-filen efter kontrollsumman för .NET-nedladdningen:

    När valideringen godkänns ser du Sant utskrivet:

    > (Get-Content .\8.0.0-sha.txt | Select-String "dotnet-sdk-8.0.100-win-x64.exe").Line -like (Get-FileHash .\dotnet-sdk-8.0.100-win-x64.exe -Algorithm SHA512).Hash + "*"
    True
    

    Om du ser falskt utskrivet är filen du laddade ned inte giltig och bör inte användas.

Körningsinformation

Körningen används för att köra appar som skapats med .NET. När en appförfattare publicerar en app kan de inkludera körningen med sin app. Om de inte inkluderar körningen är det upp till användaren att installera körningen.

Det finns tre olika .NET-körningar som du kan installera, men du bör installera både .NET Desktop Runtime och ASP.NET Core Runtime för maximal kompatibilitet med alla typer av .NET-appar. I följande tabell beskrivs vad som ingår i varje körning:

Innehåller .NET Runtime Innehåller .NET Desktop Runtime Innehåller ASP.NET Core Runtime
.NET Runtime Ja No Nej
.NET Desktop Runtime Ja Ja Nej
ASP.NET Core Runtime Nej No Ja

Följande lista innehåller information om varje körning:

  • Skrivbordskörning
    Kör .NET WPF- och Windows Forms-skrivbordsappar för Windows. Innehåller .NET-körningen.

  • ASP.NET Core Runtime
    Kör ASP.NET Core-appar.

  • .NET Runtime
    Den här körningen är den enklaste körningen och inkluderar inte någon annan körning. Installera både ASP.NET Core Runtime och Desktop Runtime för bästa kompatibilitet med .NET-appar.

SDK-information

SDK:et används för att skapa och publicera .NET-appar och -bibliotek. Installationen av SDK omfattar alla tre körningarna: ASP.NET Core, Desktop och .NET.

Armbaserade Windows-datorer

I följande avsnitt beskrivs vad du bör tänka på när du installerar .NET på en Arm-baserad Windows-dator.

Vad stöds

I följande tabell beskrivs vilka versioner av .NET som stöds på en Arm-baserad Windows-dator:

.NET-version Arkitektur SDK Körmiljö Sökvägskonflikt
8 Arm64 Ja Ja Nej
8 x64 Ja Ja Nej
7 Arm64 Ja Ja Nej
7 x64 Ja Ja Nej
6 Arm64 Ja Ja Nej
6 x64 Ja Ja Nej
5 Arm64 Ja Ja Ja
5 x64 Nej Ja Ja

X64- och Arm64-versionerna av .NET SDK finns oberoende av varandra. Om en ny version släpps måste varje arkitekturinstallation uppgraderas.

Sökvägsskillnader

På en Arm-baserad Windows-dator installeras alla Arm64-versioner av .NET i den normala mappen C:\Program Files\dotnet\ . X64-versionen av .NET SDK är dock installerad i mappen C:\Program Files\dotnet\x64\.

Sökvägskonflikter

X64 .NET SDK installeras i en egen katalog enligt beskrivningen i föregående avsnitt. På så sätt kan Arm64- och x64-versionerna av .NET SDK finnas på samma dator. X64 SDK före 6 stöds dock inte och installeras på samma plats som Arm64-versionen, mappen C:\Program Files\dotnet\. Om du vill installera en x64 SDK som inte stöds måste du först avinstallera Arm64-versionen. Motsatsen är också sant, du måste avinstallera x64 SDK som inte stöds för att installera Arm64-versionen.

Sökvägsvariabler

Miljövariabler som lägger till .NET i systemsökvägen, till exempel variabeln PATH , kan behöva ändras om du har både x64- och Arm64-versionerna av .NET SDK installerat. Dessutom förlitar sig vissa verktyg på miljövariabeln, som också skulle behöva uppdateras för att peka på DOTNET_ROOT lämplig .NET SDK-installationsmapp.

Beroenden

Följande Windows-versioner stöds med .NET 8:

Kommentar

En + symbol representerar den lägsta versionen.

OS Version Arkitekturer
Windows 11 22000+ x64, x86, Arm64
Windows 10-klient 1607+ x64, x86, Arm64
Windows Server 2012+ x64, x86
Windows Server Core 2012+ x64, x86
Nano Server 1809+ x64

Mer information om operativsystem, distributioner och livscykelprinciper som stöds av .NET 8 finns i .NET 8-versioner som stöds.

Windows 7 / 8.1 / Server 2012

Fler beroenden krävs om du installerar .NET SDK eller körning på följande Windows-versioner:

Operativsystem Förutsättningar
Windows 7 SP1 ESU – Microsoft Visual C++ 2015-2019 Redistributable 64-bitars / 32-bitars
- KB3063858 64-bitars / 32-bitars
- Microsoft Root Certificate Authority 2011 (endast offlineinstallationsprogrammet för.NET Core 2.1)
Windows 8.1 Microsoft Visual C++ 2015-2019 Redistributable 64-bitars / 32-bitars
Windows Server 2012 Microsoft Visual C++ 2015-2019 Redistributable 64-bitars / 32-bitars
Windows Server 2012 R2 Microsoft Visual C++ 2015-2019 Redistributable 64-bitars / 32-bitars

De tidigare kraven krävs också om du får ett fel som rör någon av följande dll:er:

  • api-ms-win-crt-runtime-l1-1-0.dll
  • api-ms-win-cor-timezone-l1-1-0.dll
  • hostfxr.dll

Docker

Containrar är ett enkelt sätt att isolera programmet från resten av värdsystemet. Containrar på samma dator delar bara kerneln och använder resurser som ges till ditt program.

.NET kan köras i en Docker-container. Officiella .NET Docker-avbildningar publiceras till Microsoft Container Registry (MCR) och kan identifieras på Microsoft .NET Docker Hub-lagringsplatsen. Varje lagringsplats innehåller avbildningar för olika kombinationer av .NET (SDK eller Runtime) och operativsystem som du kan använda.

Microsoft tillhandahåller avbildningar som är skräddarsydda för specifika scenarier. Lagringsplatsen ASP.NET Core innehåller till exempel avbildningar som har skapats för att köra ASP.NET Core-appar i produktion.

Mer information om hur du använder .NET i en Docker-container finns i Introduktion till .NET och Docker och Exempel.

Felsökning

När du har installerat .NET SDK kan det uppstå problem med att köra .NET CLI-kommandon. Det här avsnittet samlar in dessa vanliga problem och tillhandahåller lösningar.

Ingen .NET SDK hittades

Troligtvis har du installerat både x86- (32-bitars) och x64-versioner (64-bitars) av .NET SDK. Detta orsakar en konflikt eftersom när du kör dotnet kommandot matchas det till x86-versionen när det ska matcha till x64-versionen. Detta åtgärdas vanligtvis genom att justera variabeln %PATH% för att matcha x64-versionen först.

  1. Kontrollera att båda versionerna är installerade genom att where.exe dotnet köra kommandot . Om du gör det bör du se en post för mapparna Program Files\ och Program Files (x86)\ . Om mappen Program Files (x86)\ är först, vilket visas i följande exempel, är den felaktig och du bör fortsätta till nästa steg.

    > where.exe dotnet
    C:\Program Files (x86)\dotnet\dotnet.exe
    C:\Program Files\dotnet\dotnet.exe
    

    Om det är korrekt och Program Files\ är först har du inte det problem som det här avsnittet diskuterar och du bör skapa ett problem med .NET-hjälpbegäran på GitHub

  2. Tryck på Windows-knappen och skriv "Redigera systemmiljövariablerna" i sökningen. Välj Redigera systemmiljövariablerna.

    Windows start menu with edit environment variable

  3. Fönstret Systemegenskaper öppnas på fliken Avancerat. Välj Miljövariabler.

    The Windows system properties panel open.

  4. I fönstret Miljövariabler går du till gruppen Systemvariabler , väljer raden Sökväg* och väljer sedan knappen Redigera .

    The environment variables window with user and system variables.

  5. Använd knapparna Flytta upp och Flytta ned för att flytta posten C:\Program Files\dotnet\ ovanför C:\Program Files (x86)\dotnet\.

    The environment variables list for the system.

Det går långsammare att skapa appar än förväntat

Se till att Smart App Control, en Windows-funktion, är avstängd. Smart App Control rekommenderas inte att aktiveras på datorer som används för utveckling. Alla andra inställningar än "off" kan påverka SDK-prestanda negativt.

Nästa steg