В этой статье описывается, какие версии .NET поддерживаются в Windows, как установить .NET, а также о различиях между пакетом SDK и средой выполнения.
В отличие от платформа .NET Framework, .NET не привязан к вашей версии Windows. В Windows можно установить только одну версию платформа .NET Framework. Но .NET является автономным и может быть установлен в любом месте на компьютере. Некоторые приложения могут включать собственную копию .NET.
По умолчанию .NET устанавливается в каталог Program Files\dotnet на компьютере, если только метод установки не выбирает другой каталог.
.NET состоит из среды выполнения и пакета SDK. Среда выполнения запускает приложения .NET, а пакет SDK используется для создания приложений.
Выбор правильной среды выполнения
Существует три разных среды выполнения для Windows, которые позволяют запускать различные типы приложений. Пакет SDK включает все три среды выполнения, а установщик среды выполнения может включать дополнительную среду выполнения. В следующей таблице описывается, какая среда выполнения включена в определенный установщик .NET:
Установщик
Включает среду выполнения .NET
Включает среду выполнения рабочего стола .NET
Включает ASP.NET базовую среду выполнения
Среда выполнения .NET
Да
No
No
Среда выполнения рабочего стола .NET
Да
Да
Нет
ASP.NET базовая среда выполнения
No
No
Да
Пакет SDK для .NET
Да
Да
Да
Чтобы обеспечить запуск всех приложений .NET в Windows, установите как среду выполнения ASP.NET Core, так и среду выполнения .NET Desktop. Среда выполнения ASP.NET Core запускает веб-приложения, а среда выполнения рабочего стола .NET запускает классические приложения, такие как приложение Windows Presentation Foundation (WPF) или Windows Forms.
Выбор способа установки .NET
Существуют различные способы установки .NET, и некоторые продукты могут управлять собственной версией .NET. Если вы устанавливаете .NET через программное обеспечение, которое управляет собственной версией .NET, оно может не быть включено в системе. Убедитесь, что вы понимаете последствия установки .NET с помощью другого программного обеспечения.
Если вы не уверены, какой метод следует выбрать после просмотра списков в следующих разделах, вы, вероятно, хотите использовать установщик .NET.
Используйте Visual Studio для установки .NET, если вы хотите разрабатывать приложения .NET с помощью Visual Studio. Visual Studio управляет собственной копией .NET. Этот метод устанавливает шаблоны SDK, среды выполнения и Visual Studio.
Установите расширение комплекта разработки C# для Visual Studio Code для разработки приложений .NET. Расширение может использовать пакет SDK, который уже установлен или установлен для вас.
Установите .NET с пакетом установщика Windows, который является исполняемым файлом, который выполняется. Этот метод может установить пакет SDK и среду выполнения. Установка выполняется на уровне системы.
Используйте WinGet для установки .NET, если вы хотите управлять .NET через командную строку. Этот метод может установить пакет SDK и среду выполнения. Установка выполняется на уровне системы.
Скрипт PowerShell, который может автоматизировать установку пакета SDK или среды выполнения. Вы можете выбрать версию .NET для установки.
Поддерживаемые версии
В приведенной ниже таблице содержится список поддерживаемых сейчас выпусков .NET и версий Windows, в которых они поддерживаются. Эти версии поддерживаются до окончания поддержки версии .NET, либо до окончания жизненного цикла версии Windows.
Совет
Как напоминание, эта таблица относится к современной .NET (в отличие от платформа .NET Framework). Сведения об установке платформа .NET Framework см. в руководстве по установке платформа .NET Framework.
Даты окончания жизненного цикла версий Windows 10 зависят от выпуска. В следующей таблице рассматриваются только выпуски Домашняя, Профессиональная, Pro для образовательных учреждений и Pro для рабочих станций. Дополнительные сведения см. в справочных материалах по жизненному циклу поддержки Windows.
Операционная система
.NET 9 (архитектура)
.NET 8 (архитектура)
Windows 11 (24H2, 23H2, 22H2 Ent/Edu)
✔️ x64, x86, Arm64
✔️ x64, x86, Arm64
Windows 10 (22H2+)
✔️ x64, x86, Arm64
✔️ x64, x86, Arm64
Windows Server 2025 Windows Server 2022 Windows Server 2019 Windows Server, версия 1903 или более поздняя Windows Server 2016 Windows Server 2012 R2 Windows Server 2012
Приведенные выше требования также применяются, если возникает ошибка, связанная с любой из следующих библиотек DLL:
api-ms-win-crt-runtime-l1-1-0.dll
api-ms-win-cor-timezone-l1-1-0.dll
hostfxr.dll
Компьютеры Windows на базе ARM
.NET поддерживается на компьютерах с Windows на основе Arm. В следующих разделах описаны вещи, которые следует учитывать при установке .NET.
Различия в путях
На компьютере с Windows на основе Arm все версии Arm64 .NET устанавливаются в обычную папку C:\Program Files\dotnet\ . Однако версия пакета SDK для .NET установлена в папку C:\Program Files\dotnet\x64\.
Переменные пути
Переменные среды, добавляющие .NET в системный PATH путь, например переменную, могут быть изменены, если установлены версии пакета SDK для .NET для x64 и Arm64. Кроме того, некоторые средства полагаются на DOTNET_ROOT переменную среды, которая также должна быть обновлена, чтобы указать соответствующую папку установки пакета SDK для .NET.
Установка с помощью Visual Studio
Visual Studio устанавливает собственную копию .NET отдельно от других копий .NET. Разные версии Visual Studio поддерживают разные версии .NET. Последняя версия Visual Studio всегда поддерживает последнюю версию .NET.
Visual Studio Installer устанавливает и настраивает Visual Studio. Некоторые рабочие нагрузки Visual Studio включают .NET, такие как ASP.NET и веб-разработка и разработка многоплатформенного пользовательского интерфейса приложений .NET. Определенные версии .NET можно установить на вкладке "Отдельные компоненты ".
Документация по Visual Studio содержит инструкции по следующим инструкциям.
Если вы используете Visual Studio для разработки приложений .NET, в следующей таблице указана минимальная требуемая версия Visual Studio на основе целевой версии пакета SDK для .NET.
Версия пакета SDK для .NET
Версия Visual Studio
9
Visual Studio 2022 версии 17.12 или выше.
8
Visual Studio 2022 версии 17.8 или более поздней.
7
Visual Studio 2022 версии 17.4 или выше.
6
Visual Studio 2022 версии 17.0 или более поздней
5
Visual Studio 2019 версии 16.8 или более поздней.
3.1
Visual Studio 2019 версии 16.4 или более поздней.
3.0
Visual Studio 2019 версии 16.3 или более поздней.
2,2
Visual Studio 2017 версии 15.9 или более поздней.
2.1
Visual Studio 2017 версии 15.7 или более поздней.
Если среда Visual Studio уже установлена, вы можете проверить ее версию, выполнив указанные ниже действия.
Откройте Visual Studio.
Выберите Справка>О Microsoft Visual Studio.
Считайте номер версии из диалогового окна О программе.
Visual Studio Code — это эффективный и облегченный редактор исходного кода, который работает на компьютере. Visual Studio Code может использовать пакет SDK, уже установленный в вашей системе. Кроме того, расширение комплекта разработки C# установит для вас .NET, если оно еще не установлено.
Выберите версию .NET, которую вы хотите скачать, например 9.0.
Найдите пакет SDK или поле среды выполнения, содержащее ссылки для скачивания .NET.
В столбце установщиков найдите строку Windows и выберите ссылку для архитектуры ЦП. Если вы не уверены, выберите x64 , так как это наиболее распространено.
Браузер должен автоматически скачать установщик.
Совет
На следующем рисунке показан пакет SDK, но вы также можете скачать среду выполнения.
Откройте проводник Windows и перейдите к месту скачивания файла, скорее всего, папку downloads .
Дважды щелкните файл, чтобы установить .NET.
Откроется диалоговое окно установщика Windows.
Выберите " Установить " и следуйте инструкциям по установке .NET.
Сведения об использовании .NET CLI см. в обзоре .NET CLI.
Параметры командной строки
/? Используйте параметр для отображения списка параметров.
Если вы хотите автоматически установить .NET, например в рабочей среде или поддерживать непрерывную интеграцию, используйте следующие параметры:
/install
Устанавливает .NET.
/quiet
Предотвращает отображение любого пользовательского интерфейса и запросов.
Установщик возвращает код выхода 0 для успешного выполнения и код выхода 3010, чтобы указать, что требуется перезапуск. Любое другое значение, скорее всего, является кодом ошибки.
Центр обновления Майкрософт
Исполняемые файлы установщика .NET — это независимые продукты, которые можно обслуживать с помощью Центра обновления Майкрософт (MU) в Windows. Mu отличается от Обновл. Windows (WU), который используется для обслуживания компонентов операционной системы, таких как платформа .NET Framework.
Исправления безопасности и небезопасные для поддерживаемых версий .NET предоставляются с помощью МЮ с помощью нескольких каналов распространения. Автоматическое обновление (AU) относится к конечным пользователям и потребителям, а службы обновления Windows Server (WSUS) и каталог Обновл. Windows относятся к ИТ-администраторам.
Исполняемые файлы установщика .NET поддерживают параллельные установки (SxS) в крупных и дополнительных выпусках для различных архитектур и компонентов, таких как среда выполнения и пакет SDK. Например, можно установить среду выполнения 6.0.15 (x64) и 6.0.17 (x86). При активации МЮ он будет предлагать последний установщик для обеих установок.
Блокировка обновлений
Хотя большинство пользователей предпочитают поддерживать актуальность, можно заблокировать обновления .NET с помощью разделов реестра в следующей таблице.
Версия .NET
Раздел реестра
Имя.
Тип
значение
Все
HKLM\SOFTWARE\Microsoft\.NET
BlockMU
REG_DWORD
0x00000001
.NET 9
HKLM\SOFTWARE\Microsoft\.NET\9.0
BlockMU
REG_DWORD
0x00000001
.NET 8
HKLM\SOFTWARE\Microsoft\.NET\8.0
BlockMU
REG_DWORD
0x00000001
.NET 7
HKLM\SOFTWARE\Microsoft\.NET\7.0
BlockMU
REG_DWORD
0x00000001
.NET 6
HKLM\SOFTWARE\Microsoft\.NET\6.0
BlockMU
REG_DWORD
0x00000001
.NET 5
HKLM\SOFTWARE\Microsoft\.NET\5.0
BlockMU
REG_DWORD
0x00000001
.NET Core 3.1.
HKLM\SOFTWARE\Microsoft\.NET\3.1
BlockMU
REG_DWORD
0x00000001
.NET Core 2.1
HKLM\SOFTWARE\Microsoft\.NET\2.1
BlockMU
REG_DWORD
0x00000001
Автоматическое обновление для ОС сервера
Обновления для операционных систем сервера поддерживаются службами WSUS и каталогом Центра обновления Майкрософт, но не au. Операционные системы сервера могут принимать обновления через au с помощью следующих разделов реестра.
Версия .NET
Раздел реестра
Имя.
Тип
значение
Все
HKLM\SOFTWARE\Microsoft\.NET
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 9
HKLM\SOFTWARE\Microsoft\.NET\9.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 8
HKLM\SOFTWARE\Microsoft\.NET\8.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 7
HKLM\SOFTWARE\Microsoft\.NET\7.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 6
HKLM\SOFTWARE\Microsoft\.NET\6.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET 5
HKLM\SOFTWARE\Microsoft\.NET\5.0
AllowAUOnServerOS
REG_DWORD
0x00000001
.NET Core 3.1.
HKLM\SOFTWARE\Microsoft\.NET\3.1
AllowAUOnServerOS
REG_DWORD
0x00000001
Выбор момента удаления предыдущих версий
Исполняемые файлы установщика всегда устанавливают новое содержимое перед удалением предыдущей установки. Приложения, работающие, могут быть прерваны или завершаются сбоем при удалении старых сред выполнения. Чтобы свести к минимуму влияние обновления .NET, можно указать, когда предыдущая установка .NET должна быть удалена с помощью раздела реестра.
Версия .NET
Раздел реестра
Имя.
Тип
значение
Все
HKLM\SOFTWARE\Microsoft\.NET
RemovePreviousVersion
REG_SZ
always, never или nextSession
.NET 9
HKLM\SOFTWARE\Microsoft\.NET\9.0
RemovePreviousVersion
REG_SZ
always, never или nextSession
.NET 8
HKLM\SOFTWARE\Microsoft\.NET\8.0
RemovePreviousVersion
REG_SZ
always, never или nextSession
never сохраняет предыдущие установки и требует ручного вмешательства для удаления предыдущих установок .NET.
always Удаляет предыдущие установки после установки новой версии. Это поведение по умолчанию в .NET.
nextSession Откладывает удаление до следующего сеанса входа из членов группы "Администраторы".
Значения являются нечувствительными к регистру и недопустимыми значениями по умолчанию always.
При отсрочке удаления установщик записывает команду в раздел реестра RunOnce , чтобы удалить предыдущую версию. Команда выполняется только в том случае, если пользователь в группе "Администраторы" входит на компьютер.
Примечание
Эта функция доступна только в .NET 8 (8.0.11), 9 и более поздних версиях .NET. Он применяется только к автономным исполняемым файлам установщика и влияет на дистрибутивы, такие как WinGet, которые используют их.
Установка с помощью Диспетчер пакетов Windows (WinGet)
Вы можете установить и управлять .NET через службу Диспетчер пакетов Windows с помощью winget.exe средства. Дополнительные сведения об установке и использовании WinGet см. в статье "Использование средства winget для установки приложений и управления ими".
Если вы устанавливаете .NET на уровне системы, установите с правами администратора.
Откройте терминал, например PowerShell или командную строку.
winget install Выполните команду и передайте имя пакета SDK:
winget install Microsoft.DotNet.SDK.9
Сведения об использовании .NET CLI см. в обзоре .NET CLI.
Установка среды выполнения
Существуют различные среды выполнения, которые можно установить. Ознакомьтесь с разделом "Выбор правильной среды выполнения ", чтобы понять, что входит в состав каждой среды выполнения.
Сведения об использовании .NET CLI см. в обзоре .NET CLI.
Поиск версий
winget search Используйте команду для поиска различных версий пакета, который требуется установить. Например, следующая команда выполняет поиск всех пакетов SDK для .NET, доступных через WinGet:
winget search Microsoft.DotNet.SDK
Результаты поиска печатаются в таблице с каждым идентификатором пакета.
Name Id Version Source
----------------------------------------------------------------------------------------------
Microsoft .NET SDK 9.0 Microsoft.DotNet.SDK.9 9.0.100 winget
Microsoft .NET SDK 8.0 Microsoft.DotNet.SDK.8 8.0.300 winget
Microsoft .NET SDK 7.0 Microsoft.DotNet.SDK.7 7.0.409 winget
Microsoft .NET SDK 6.0 Microsoft.DotNet.SDK.6 6.0.422 winget
Microsoft .NET SDK 5.0 Microsoft.DotNet.SDK.5 5.0.408 winget
Microsoft .NET SDK 3.1 Microsoft.DotNet.SDK.3_1 3.1.426 winget
Установка предварительных версий
Если доступна предварительная версия, замените номер версии в идентификаторе словом Preview. В следующем примере устанавливается предварительная версия среды выполнения рабочего стола .NET:
Установка .NET с помощью скрипта PowerShell рекомендуется для непрерывной dotnet-install интеграции и неадминистрационных установок. Если вы устанавливаете .NET для нормального использования в системе, используйте установщик .NET или методы установки Диспетчер пакетов Windows.
Сценарий по умолчанию используется для установки последней долгосрочной версии поддержки (LTS), которая является .NET 8. Вы можете выбрать конкретный выпуск, указав параметр -Channel. Включите параметр -Runtime для установки среды выполнения. В противном случае сценарий устанавливает пакет SDK. Скрипт доступен https://dot.net/v1/dotnet-install.ps1 в GitHub, а исходный код размещен на сайте GitHub.
Откройте PowerShell и перейдите в папку, содержащую скрипт.
Выполните следующую команду, чтобы установить пакет SDK для .NET.
dotnet-install.ps1
Примечание
Пакет SDK устанавливается путем пропуска -Runtime переключателя.
Сведения об использовании .NET CLI см. в обзоре .NET CLI.
Проверка
После скачивания установщика или двоичного выпуска убедитесь, что файл не был изменен или поврежден. Вы можете проверить контрольную сумму на компьютере, а затем сравнить ее с тем, что было сообщено на веб-сайте скачивания.
При скачивании файла с официальной страницы скачивания контрольная сумма для файла отображается в текстовом поле. Нажмите кнопку "Копировать", чтобы скопировать значение контрольной суммы в буфер обмена.
Вы можете использовать PowerShell или командную строку для проверки контрольной суммы загруженного файла. Например, следующая команда сообщает контрольную сумму файла dotnet-sdk-8.0.100-win-x64.exe :
Сравните контрольную сумму со значением, предоставленным сайтом скачивания.
Использование PowerShell и файла контрольной суммы для проверки
Заметки о выпуске .NET содержат ссылку на файл контрольной суммы, который можно использовать для проверки скачаированного файла. Ниже описано, как скачать файл контрольной суммы и проверить двоичный файл установки .NET:
Страница заметок о выпуске для .NET 8 на сайте GitHub https://github.com/dotnet/core/tree/main/release-notes/8.0 содержит раздел с именем "Выпуски". Таблица в этом разделе ссылается на файлы загрузки и контрольные суммы для каждого выпуска .NET 8:
Выберите ссылку для скачаемой версии .NET. Предыдущий раздел использовал пакет SDK для .NET 8.0.100, который находится в выпуске .NET 8.0.0.
Совет
Если вы не уверены, какой выпуск .NET содержит файл контрольной суммы, изучите ссылки, пока не найдете его.
На странице выпуска можно увидеть версию пакета SDK для .NET и среды выполнения .NET, а также ссылку на файл контрольной суммы:
Скопируйте ссылку на файл контрольной суммы.
Используйте следующий скрипт, но замените ссылку, чтобы скачать соответствующий файл контрольной суммы:
Если отображается значение False , скачанный файл недействителен и не должен использоваться.
Устранение неполадок
После установки пакета SDK для .NET могут возникнуть проблемы, связанные с выполнением команд .NET CLI. В этом разделе собираются распространенные проблемы и предоставляются решения.
Скорее всего, вы установили версии x86 (32-разрядная версия) и x64 (64-разрядная версия пакета SDK для .NET). Это приводит к конфликту, так как при выполнении dotnet команды она разрешается в версию x86, когда она должна разрешаться в версию x64. Эта проблема устранена путем настройки переменной %PATH% , чтобы сначала устранить версию x64.
Убедитесь, что установлены обе версии, выполнив where.exe dotnet команду. Если это сделать, вы увидите запись для папок Program Files\ и Program Files (x86)\ . Если папка Program Files (x86)\ является первой, как показано в следующем примере, это неправильно, и вы должны продолжить переход к следующему шагу.
Если это правильно, и program Files\ первый, у вас нет проблемы, которую обсуждает этот раздел, и вы должны создать проблему с запросом справки .NET на GitHub
Нажмите кнопку Windows и введите "Изменить системные переменные среды" в поиск. Выберите "Изменить системные переменные среды".
Откроется окно "Свойства системы" на вкладке "Дополнительно". Выберите переменные среды.
В окне "Переменные среды" в группе системных переменных выберите строку Path* и нажмите кнопку "Изменить".
Используйте кнопки перемещения вверх ивниз, чтобы переместить запись C:\Program Files\dotnet\ выше C:\Program Files (x86)\dotnet\.
Создание приложений медленнее, чем ожидалось
Убедитесь, что smart App Control, компонент Windows, отключен. Интеллектуальный элемент управления приложениями не рекомендуется включать на компьютерах, используемых для разработки. Любой параметр, отличный от "off", может отрицательно повлиять на производительность пакета SDK.
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв:
.NET — это кроссплатформенная среда с открытым исходным кодом для создания приложений различных типов. С .NET можно использовать различные языки, редакторы и библиотеки для написания мобильных, классических и веб-приложений, игр и приложений для Интернета вещей.