Установка .NET в WindowsInstall .NET on Windows

В этой статье вы узнаете, как установить .NET в Windows.In this article, you'll learn how to install .NET on Windows. .NET состоит из среды выполнения и пакета SDK..NET is made up of the runtime and the SDK. Среда выполнения используется для запуска приложения .NET и может не включаться в состав приложения.The runtime is used to run a .NET app and may or may not be included with the app. Пакет SDK используется для создания приложений и библиотек .NET.The SDK is used to create .NET apps and libraries. Среда выполнения .NET всегда устанавливается вместе с пакетом SDK.The .NET runtime is always installed with the SDK.

.NET 5.0 является последней версией.The latest version of .NET is 5.0.

Поддерживаемые выпускиSupported releases

В приведенной ниже таблице содержится список поддерживаемых сейчас выпусков .NET и версий Windows, в которых они поддерживаются.The following table is a list of currently supported .NET releases and the versions of Windows they're supported on. Эти версии поддерживаются до окончания поддержки версии .NET, либо до окончания жизненного цикла версии Windows.These versions remain supported until either the version of .NET reaches end-of-support or the version of Windows reaches end-of-life.

Даты окончания жизненного цикла версий Windows 10 зависят от выпуска.Windows 10 versions end-of-service dates are segmented by edition. В следующей таблице рассматриваются только выпуски Домашняя, Профессиональная, Pro для образовательных учреждений и Pro для рабочих станций.Only Home, Pro, Pro Education, and Pro for Workstations editions are considered in the following table. Дополнительные сведения см. в справочных материалах по жизненному циклу поддержки Windows.Check the Windows lifecycle fact sheet for specific details.

Совет

Символ + представляет минимальную версию.A + symbol represents the minimum version.

Операционная системаOperating System .NET Core 2.1.NET Core 2.1 .NET Core 3.1.NET Core 3.1 .NET 5.NET 5
Windows 10, версия 20H2Windows 10, Version 20H2 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, версия 2004Windows 10, Version 2004 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, версия 1909Windows 10, Version 1909 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, версия 1903Windows 10, Version 1903 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, версия 1809Windows 10, Version 1809 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, версия 1803Windows 10, Version 1803 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10, версия 1709Windows 10, Version 1709 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10 (версия 1607)Windows 10, Version 1607 ✔️✔️ ✔️✔️ ✔️✔️
Windows 8.1Windows 8.1 ✔️✔️ ✔️✔️ ✔️✔️
Windows 7 с пакетом обновления 1 (SP1), ESUWindows 7 SP1 ESU ✔️✔️ ✔️✔️ ✔️✔️
Windows 10 (версия 1607)Windows 10, Version 1607 ✔️✔️ ✔️✔️ ✔️✔️
Windows 10 (версия 1607)Windows 10, Version 1607 ✔️✔️ ✔️✔️ ✔️✔️
Windows Server 2012 R2Windows Server 2012 R2 ✔️✔️ ✔️✔️ ✔️✔️
Windows Server Core 2012 R2Windows Server Core 2012 R2 ✔️✔️ ✔️✔️ ✔️✔️
Nano Server, версия 1809 и вышеNano Server, Version 1809+ ✔️✔️ ✔️✔️ ✔️✔️
Nano Server, версия 1803Nano Server, Version 1803 ✔️✔️ ✔️✔️

Неподдерживаемые выпускиUnsupported releases

Следующие версии .NET больше не поддерживаются (❌).The following versions of .NET are ❌ no longer supported. (но остаются доступными для скачивания):The downloads for these still remain published:

  • 3.03.0
  • 2.22.2
  • 2.02.0

Сведения о среде выполненияRuntime information

Среда выполнения используется для запуска приложений, созданных с помощью .NET.The runtime is used to run apps created with .NET. При публикации приложения автор может включить среду выполнения в его состав.When an app author publishes an app, they can include the runtime with their app. В противном случае устанавливать среду выполнения будет пользователь.If they don't include the runtime, it's up to the user to install the runtime.

В Windows можно установить три различные версии среды выполнения:There are three different runtimes you can install on Windows:

Среда выполнения ASP.NET CoreASP.NET Core runtime
Используется для запуска приложений ASP.NET Core.Runs ASP.NET Core apps. Включает среду выполнения .NET.Includes the .NET runtime.

Среда выполнения для классических приложенийDesktop runtime
Используется для запуска классических приложений .NET WPF и Windows Forms для Windows.Runs .NET WPF and Windows Forms desktop apps for Windows. Включает среду выполнения .NET.Includes the .NET runtime.

Среда выполнения .NET.NET runtime
Простейшая среда выполнения, в состав которой не входят какие-либо другие среды выполнения.This runtime is the simplest runtime and doesn't include any other runtime. Чтобы обеспечить максимальный уровень совместимости с приложениями .NET, настоятельно рекомендуется устанавливать среду выполнения ASP.NET Core и среду выполнения для классических приложений.It's highly recommended that you install both ASP.NET Core runtime and Desktop runtime for the best compatibility with .NET apps.

Сведения о пакете SDKSDK information

Пакет SDK используется для создания и публикации приложений и библиотек .NET.The SDK is used to build and publish .NET apps and libraries. При установке пакета SDK также устанавливаются все три среды выполнения: ASP.NET Core, компьютер и .NET.Installing the SDK includes all three runtimes: ASP.NET Core, Desktop, and .NET.

ЗависимостиDependencies

.NET 5.0 поддерживает следующие версии Windows:The following Windows versions are supported with .NET 5.0:

Примечание

Символ + представляет минимальную версию.A + symbol represents the minimum version.

Операционная системаOS VersionVersion АрхитектурыArchitectures
Клиент Windows 10Windows 10 Client Версия 1607+Version 1607+ x64, x86, ARM64x64, x86, ARM64
Клиент WindowsWindows Client 7 с пакетом обновления 1 и более поздних версий (SP1+), 8.17 SP1+, 8.1 x64, x86x64, x86
Windows ServerWindows Server 2012 R2+2012 R2+ x64, x86x64, x86
Windows Server CoreWindows Server Core 2012 R2+2012 R2+ x64, x86x64, x86
Nano ServerNano Server Версия 1809+Version 1809+ X64x64

Дополнительные сведения об операционных системах, дистрибутивах и политике жизненного цикла, поддерживаемых .NET 5.0, см. в статье Поддерживаемые .NET 5.0 версии ОС.For more information about .NET 5.0 supported operating systems, distributions, and lifecycle policy, see .NET 5.0 Supported OS Versions.

Windows 7 / Vista / 8.1 / Server 2008 R2 / Server 2012 R2Windows 7 / Vista / 8.1 / Server 2008 R2 / Server 2012 R2

При установке пакета SDK для .NET или среды выполнения .NET в следующих версиях Windows требуются дополнительные зависимости:More dependencies are required if you're installing the .NET SDK or runtime on the following Windows versions:

Операционная системаOperating System Предварительные требованияPrerequisites
Windows 7 с пакетом обновления 1 (SP1), ESUWindows 7 SP1 ESU – Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядный- Microsoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit
– Обновление KB3063858, 64-разрядное / 32-разрядное- KB3063858 64-bit / 32-bit
- MicrosoftRootCertificateAuthority2011.cer (только для .NET Core 2.1)- MicrosoftRootCertificateAuthority2011.cer (.NET Core 2.1 only)
Windows Vista с пакетом обновления 2 (SP2)Windows Vista SP 2 Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядныйMicrosoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit
Windows 8.1Windows 8.1 Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядныйMicrosoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit
Windows Server 2008 R2Windows Server 2008 R2 Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядныйMicrosoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit
Windows Server 2012 R2Windows Server 2012 R2 Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядныйMicrosoft Visual C++ 2015-2019 Redistributable 64-bit / 32-bit

Приведенные выше требования также применяются, если возникает ошибка, связанная с любой из следующих библиотек DLL:The previous requirements are also required if you receive an error related to either of the following dlls:

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

Установка с помощью функции автоматизации PowerShellInstall with PowerShell automation

Сценарии dotnet-install используются для автоматизации непрерывной интеграции и ее осуществления без прав администратора.The dotnet-install scripts are used for CI automation and non-admin installs of the runtime. Вы можете скачать сценарий со страницы справочника по сценариям dotnet-install.You can download the script from the dotnet-install script reference page.

Этот сценарий по умолчанию устанавливает последнюю версию с долгосрочной поддержкой (LTS), которой сейчас является .NET Core 3.1.The script defaults to installing the latest long term support (LTS) version, which is .NET Core 3.1. Вы можете выбрать конкретный выпуск, указав параметр Channel.You can choose a specific release by specifying the Channel switch. Включите параметр Runtime для установки среды выполнения.Include the Runtime switch to install a runtime. В противном случае сценарий устанавливает пакет SDK.Otherwise, the script installs the SDK.

dotnet-install.ps1 -Channel 5.0 -Runtime aspnetcore

Установите пакет SDK, опустив параметр -Runtime.Install the SDK by omitting the -Runtime switch. В этом примере для параметра -Channel задано значение Current, которое определяет установку последней поддерживаемой версии.The -Channel switch is set in this example to Current, which installs the latest supported version.

dotnet-install.ps1 -Channel Current

Установка с помощью Visual StudioInstall with Visual Studio

Если вы используете Visual Studio для разработки приложений .NET, в следующей таблице указана минимальная требуемая версия Visual Studio на основе целевой версии пакета SDK для .NET.If you're using Visual Studio to develop .NET apps, the following table describes the minimum required version of Visual Studio based on the target .NET SDK version.

Версия пакета SDK для .NET.NET SDK version Версия Visual StudioVisual Studio version
5,05.0 Visual Studio 2019 версии 16.8 или более поздней.Visual Studio 2019 version 16.8 or higher.
3.13.1 Visual Studio 2019 версии 16.4 или более поздней.Visual Studio 2019 version 16.4 or higher.
3.03.0 Visual Studio 2019 версии 16.3 или более поздней.Visual Studio 2019 version 16.3 or higher.
2.22.2 Visual Studio 2017 версии 15.9 или более поздней.Visual Studio 2017 version 15.9 or higher.
2.12.1 Visual Studio 2017 версии 15.7 или более поздней.Visual Studio 2017 version 15.7 or higher.

Если среда Visual Studio уже установлена, вы можете проверить ее версию, выполнив указанные ниже действия.If you already have Visual Studio installed, you can check your version with the following steps.

  1. Запустите Visual Studio.Open Visual Studio.
  2. Выберите Справка > О Microsoft Visual Studio.Select Help > About Microsoft Visual Studio.
  3. Считайте номер версии из диалогового окна О программе.Read the version number from the About dialog.

Visual Studio может установить последнюю версию пакета SDK для .NET и среды выполнения .NET.Visual Studio can install the latest .NET SDK and runtime.

Выбор рабочей нагрузкиSelect a workload

При установке или изменении Visual Studio выберите одну или несколько из следующих рабочих нагрузок в зависимости от типа создаваемого приложения:When installing or modifying Visual Studio, select one or more of the following workloads, depending on the kind of application you're building:

  • рабочая нагрузка Кроссплатформенная разработка .NET Core в разделе Другие наборы инструментов;The .NET Core cross-platform development workload in the Other Toolsets section.
  • рабочая нагрузка ASP.NET и разработка веб-приложений в разделе Веб-разработка и облако;The ASP.NET and web development workload in the Web & Cloud section.
  • рабочая нагрузка Разработка для Azure в разделе Веб-разработка и облако;The Azure development workload in the Web & Cloud section.
  • рабочая нагрузка Разработка классических приложений .NET в разделе Классические и мобильные.The .NET desktop development workload in the Desktop & Mobile section.

Windows Visual Studio 2019 с рабочей нагрузкой .NET CoreWindows Visual Studio 2019 with .NET Core workload

Установка вместе с Visual Studio CodeInstall alongside Visual Studio Code

Visual Studio Code — это эффективный и облегченный редактор исходного кода, который работает на компьютере.Visual Studio Code is a powerful and lightweight source code editor that runs on your desktop. Visual Studio Code доступен для Windows, macOS и Linux.Visual Studio Code is available for Windows, macOS, and Linux.

Хотя Visual Studio Code не поставляется с автоматическим установщиком .NET Core, таким как Visual Studio, добавление поддержки .NET Core не вызывает затруднений.While Visual Studio Code doesn't come with an automated .NET Core installer like Visual Studio does, adding .NET Core support is simple.

  1. Скачайте и установите Visual Studio Code.Download and install Visual Studio Code.
  2. Скачайте и установите пакет SDK для .NET Core.Download and install the .NET Core SDK.
  3. Установите расширение C# из Marketplace для Visual Studio Code.Install the C# extension from the Visual Studio Code marketplace.

Установщик WindowsWindows Installer

Страница загрузки для .NET содержит исполняемые файлы установщика Windows.The download page for .NET provides Windows Installer executables.

При использовании файлов MSI для установки .NET вы можете указать путь установки, задав параметры DOTNETHOME_X64 и DOTNETHOME_X86.When you use the MSI files to install .NET< you can customize the installation path by setting the DOTNETHOME_X64 and DOTNETHOME_X86 parameters:

dotnet-sdk-3.1.301-win-x64.exe DOTNETHOME_X64="F:\dotnet\x64" DOTNETHOME_X86="F:\dotnet\x86"

Скачивание и установка вручнуюDownload and manually install

В качестве альтернативы установщикам Windows для .NET можно скачать и вручную установить пакет SDK или среду выполнения.As an alternative to the Windows installers for .NET, you can download and manually install the SDK or runtime. Ручная установка как правило выполняется в рамках тестирования непрерывной интеграции.Manual install is usually performed as part of continuous integration testing. В большинстве случаев разработчикам и пользователям рекомендуется использовать установщик.For a developer or user, it's generally better to use an installer.

Как пакет SDK для .NET, так и среду выполнения .NET можно установить вручную после скачивания.Both .NET SDK and .NET Runtime can be manually installed after they've been downloaded. При установке пакета SDK для .NET не нужно устанавливать соответствующую среду выполнения.If you install .NET SDK, you don't need to install the corresponding runtime. Сначала скачайте двоичный выпуск пакета SDK или среды выполнения с одного из следующих сайтов:First, download a binary release for either the SDK or the runtime from one of the following sites:

Создайте каталог, в который будет выполнено извлечение .NET, например %USERPROFILE%\dotnet.Create a directory to extract .NET to, for example %USERPROFILE%\dotnet. Затем извлеките скачанный ZIP-файл в этот каталог.Then, extract the downloaded zip file into that directory.

По умолчанию команды и приложения .NET CLI не будут использовать платформу .NET, установленную таким образом. Вам нужно выбрать ее явно.By default, .NET CLI commands and apps won't use .NET installed in this way and you must explicitly choose to use it. Для этого измените переменные среды, с которыми запускается приложение:To do so, change the environment variables with which an application is started:

set DOTNET_ROOT=%USERPROFILE%\dotnet
set PATH=%USERPROFILE%\dotnet;%PATH%
set DOTNET_MULTILEVEL_LOOKUP=0

Такой подход позволяет установить несколько версий в отдельные расположения, а затем явно выбрать расположение установки, которое должно использовать приложение, запустив приложение с переменными среды, указывающими на это расположение.This approach lets you install multiple versions into separate locations, then explicitly choose which install location an application should use by running the application with environment variables pointing at that location.

Если параметр DOTNET_MULTILEVEL_LOOKUP имеет значение 0, .NET игнорирует любые установленные глобально версии .NET.When DOTNET_MULTILEVEL_LOOKUP is set to 0, .NET ignores any globally installed .NET version. Если нужно, чтобы платформа .NET учитывала глобальное расположение установки по умолчанию при выборе лучшей платформы для запуска приложения, удалите этот параметр среды.Remove that environment setting to let .NET consider the default global install location when selecting the best framework for running the application. По умолчанию обычно используется каталог C:\Program Files\dotnet, в который выполняется установка .NET при использовании установщика.The default is typically C:\Program Files\dotnet, which is where the installers install .NET.

DockerDocker

Контейнеры обеспечивают простой способ изоляции приложения от остальной части основной системы.Containers provide a lightweight way to isolate your application from the rest of the host system. Контейнеры на одном компьютере совместно использую только ядро, а также используют ресурсы, которые передаются в приложение.Containers on the same machine share just the kernel and use resources given to your application.

.NET можно выполнять в контейнере Docker..NET can run in a Docker container. Официальные образы Docker для .NET публикуются в реестре контейнеров Microsoft (MCR), и доступ к ним можно получить в репозитории Microsoft .NET Docker Hub.Official .NET Docker images are published to the Microsoft Container Registry (MCR) and are discoverable at the Microsoft .NET Docker Hub repository. Каждый репозиторий содержит рабочие образы для разных сочетаний .NET (пакета SDK или среды выполнения) и операционной системы.Each repository contains images for different combinations of the .NET (SDK or Runtime) and OS that you can use.

Корпорация Майкрософт предоставляет образы, которые предназначены для конкретных сценариев.Microsoft provides images that are tailored for specific scenarios. Например репозиторий ASP.NET Core содержит образы, которые предназначены для запуска приложений ASP.NET Core в рабочей среде.For example, the ASP.NET Core repository provides images that are built for running ASP.NET Core apps in production.

Дополнительные сведения об использовании .NET в контейнере Docker см. в статьях Введение в .NET и Docker и Примеры.For more information about using .NET in a Docker container, see Introduction to .NET and Docker and Samples.

Дальнейшие действияNext steps