Установка .NET в Windows
В этой статье описано, как установить .NET в Windows. .NET состоит из среды выполнения и пакета SDK. Среда выполнения используется для запуска приложения .NET и может быть включена в приложение. Пакет SDK используется для создания приложений и библиотек .NET. Среда выполнения .NET всегда устанавливается вместе с пакетом SDK.
Последняя версия .NET — 8.0.
Существует два типа поддерживаемых выпусков: выпуски долгосрочной поддержки (LTS) и выпуски стандартной поддержки терминов (STS). Качество всех выпусков одинаково. Единственное различие заключается в продолжительности поддержки. Выпуски LTS получают бесплатную поддержку и исправления в течение трех лет. Выпуски STS получают бесплатную поддержку и исправления в течение 18 месяцев. Дополнительные сведения см. в статье о политике поддержки .NET.
В следующей таблице перечислены сведения о состоянии поддержки каждой версии .NET (и .NET Core):
✔️ Поддерживается | ❌ Не поддерживается |
---|---|
8 (LTS) | 5 |
7 (STS) | 3.1 |
6 (LTS) | 3.0 |
2.1 | |
2.0 | |
1,1 | |
1.0 |
Установка с помощью Диспетчер пакетов Windows (winget)
Вы можете установить и управлять .NET через службу Диспетчер пакетов Windows с помощью средства winget. Дополнительные сведения об установке и использовании winget см. в разделе "Использование средства winget".
Если вы устанавливаете .NET на уровне системы, установите с правами администратора.
Установка пакета SDK
Пакет SDK для .NET позволяет разрабатывать приложения с помощью .NET. При установке пакета SDK для .NET не требуется устанавливать соответствующие среды выполнения. Чтобы установить пакет SDK для .NET, выполните приведенную ниже команду.
winget install Microsoft.DotNet.SDK.8
Установка среды выполнения
Существует три разных среды выполнения .NET, которые можно установить, однако следует установить как среду выполнения рабочего стола .NET, так и среду выполнения ASP.NET Core для обеспечения максимальной совместимости со всеми типами приложений .NET. В следующей таблице описывается, что входит в состав каждой среды выполнения:
Включает среду выполнения .NET | Включает среду выполнения рабочего стола .NET | Включает ASP.NET базовую среду выполнения | |
---|---|---|---|
Среда выполнения .NET | Да | No | No |
Среда выполнения рабочего стола .NET | Да | Да | Нет |
ASP.NET базовая среда выполнения | No | No | Да |
В следующем списке содержатся сведения о каждой среде выполнения вместе с командами winget для их установки:
Среда выполнения рабочего стола .NET
Эта среда выполнения поддерживает приложения Windows Presentation Foundation (WPF) и Windows Forms, созданные с помощью .NET. Это не то же самое, что и платформа .NET Framework, который поставляется с Windows. Эта среда выполнения включает среду выполнения .NET, но не включает ASP.NET Core Runtime, которая должна быть установлена отдельно.
winget install Microsoft.DotNet.DesktopRuntime.8
Среда выполнения .NET
Это базовая среда выполнения и содержит только компоненты, необходимые для запуска консольного приложения. Как правило, вы устанавливаете среду выполнения рабочего стола .NET и ASP.NET Core Runtime вместо этого.
winget install Microsoft.DotNet.Runtime.8
ASP.NET базовая среда выполнения
Эта среда выполнения выполняет веб-серверные приложения и предоставляет множество ИНТЕРФЕЙСов API, связанных с веб-сайтом. ASP.NET Core Runtime позволяет запускать приложения, сделанные с помощью .NET, которые не предоставили среде выполнения. В дополнение к этой среде выполнения необходимо установить среду выполнения .NET. Следующие команды устанавливают ASP.NET Core Runtime в терминале, выполнив следующие команды:
winget install Microsoft.DotNet.AspNetCore.8
Вы можете установить предварительные версии среды выполнения, заменив номер версии, например 6
словом Preview
. В следующем примере устанавливается предварительная версия среды выполнения рабочего стола .NET:
winget install Microsoft.DotNet.DesktopRuntime.Preview
Установка вместе с Visual Studio Code
Visual Studio Code — это эффективный и облегченный редактор исходного кода, который работает на компьютере. Visual Studio Code доступен для Windows, macOS и Linux.
Хотя Visual Studio Code не поставляется с автоматическим установщиком .NET Core, таким как Visual Studio, добавление поддержки .NET Core не вызывает затруднений.
- Скачайте и установите Visual Studio Code.
- Скачайте и установите пакет SDK для .NET.
- Установите расширение C# из Marketplace для Visual Studio Code.
Расширение C# для Visual Studio Code включает последнюю версию пакета SDK для .NET, и вам не нужно устанавливать среду выполнения .NET отдельно.
Установка с помощью установщика Windows
Существует три разных среды выполнения .NET, которые можно установить, однако следует установить как среду выполнения рабочего стола .NET, так и среду выполнения ASP.NET Core для обеспечения максимальной совместимости со всеми типами приложений .NET. В следующей таблице описывается, что входит в состав каждой среды выполнения:
Включает среду выполнения .NET | Включает среду выполнения рабочего стола .NET | Включает ASP.NET базовую среду выполнения | |
---|---|---|---|
Среда выполнения .NET | Да | No | No |
Среда выполнения рабочего стола .NET | Да | Да | Нет |
ASP.NET базовая среда выполнения | No | No | Да |
Пакет SDK для .NET позволяет создавать приложения .NET и содержать все среды выполнения.
Страница загрузки для .NET содержит исполняемые файлы установщика Windows.
Для установки .NET в автоматическом режиме, например, в рабочей среде, или для поддержки непрерывной интеграции, используйте следующие параметры:
/install
Устанавливает .NET./quiet
Предотвращает отображение любого пользовательского интерфейса и запросов./norestart
Подавляет попытки перезапуска.
dotnet-sdk-8.0.100-win-x64.exe /install /quiet /norestart
Дополнительные сведения смотрите в статье Параметры командной строки стандартного установщика.
Совет
Установщик возвращает код выхода 0 для успешного выполнения и код выхода 3010, чтобы указать, что требуется перезапуск. Любое другое значение обычно является кодом ошибки.
Установка с помощью функции автоматизации PowerShell
Сценарии dotnet-install используются для автоматизации непрерывной интеграции и ее осуществления без прав администратора. Вы можете скачать сценарий со страницы справочника по сценариям dotnet-install.
Сценарий по умолчанию используется для установки последней долгосрочной версии поддержки (LTS), которая является .NET 8. Вы можете выбрать конкретный выпуск, указав параметр Channel
. Включите параметр Runtime
для установки среды выполнения. В противном случае сценарий устанавливает пакет SDK.
Следующая команда устанавливает среды выполнения Desktop и ASP.NET Core для обеспечения максимальной совместимости.
dotnet-install.ps1 -Channel 8.0 -Runtime windowsdesktop
dotnet-install.ps1 -Channel 8.0 -Runtime aspnetcore
Установите пакет SDK, опустив параметр -Runtime
. Этот -Channel
параметр устанавливается в этом примере STS
, который устанавливает последнюю версию поддержки терминов "Стандартный", которая является .NET 7.
dotnet-install.ps1 -Channel STS
Установка с помощью Visual Studio
Если вы используете Visual Studio для разработки приложений .NET, в следующей таблице указана минимальная требуемая версия Visual Studio на основе целевой версии пакета SDK для .NET.
Версия пакета SDK для .NET | Версия Visual Studio |
---|---|
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 может установить последнюю версию пакета SDK для .NET и среды выполнения .NET.
Дополнительные сведения см. в статье sdk для .NET, MSBuild и Visual Studio.
Выбор рабочей нагрузки
При установке или изменении Visual Studio выберите одну или несколько из следующих рабочих нагрузок в зависимости от типа создаваемого приложения:
- рабочая нагрузка Кроссплатформенная разработка .NET Core в разделе Другие наборы инструментов;
- рабочая нагрузка ASP.NET и разработка веб-приложений в разделе Веб-разработка и облако;
- рабочая нагрузка Разработка для Azure в разделе Веб-разработка и облако;
- рабочая нагрузка Разработка классических приложений .NET в разделе Классические и мобильные.
Поддерживаемые выпуски
В приведенной ниже таблице содержится список поддерживаемых сейчас выпусков .NET и версий Windows, в которых они поддерживаются. Эти версии поддерживаются до окончания поддержки версии .NET, либо до окончания жизненного цикла версии Windows.
Даты окончания жизненного цикла версий Windows 10 зависят от выпуска. В следующей таблице рассматриваются только выпуски Домашняя, Профессиональная, Pro для образовательных учреждений и Pro для рабочих станций. Дополнительные сведения см. в справочных материалах по жизненному циклу поддержки Windows.
Совет
Символ +
представляет минимальную версию.
Операционная система | .NET 8 | .NET 7 | .NET 6 |
---|---|---|---|
Windows 11 | ✔️ | ✔️ | ✔️ |
Windows Server 2022 | ✔️ | ✔️ | ✔️ |
Windows Server, версия 1903 или более поздняя | ✔️ | ✔️ | ✔️ |
Windows 10 версии 1607 или более поздней | ✔️ | ✔️ | ✔️ |
Windows 8.1 | ❌ | ❌ | ✔️ |
Windows 7 с пакетом обновления 1 (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, версия 1809 и выше | ✔️ | ✔️ | ✔️ |
Nano Server, версия 1803 | ❌ | ❌ | ❌ |
Дополнительные сведения о поддерживаемых операционных системах, дистрибутивах и политике жизненного цикла .NET 8 см . в поддерживаемых версиях ОС .NET 8.
Неподдерживаемые выпуски
Следующие версии .NET больше не поддерживаются (❌).
- .NET 5
- .NET Core 3.1.
- .NET Core 3.0
- .NET Core 2.2
- .NET Core 2.1
- .NET Core 2.0;
Проверка скачанных двоичных файлов
После скачивания установщика убедитесь, что файл не был изменен или поврежден. Вы можете проверить проверка сум на компьютере, а затем сравнить его с тем, что было сообщено на веб-сайте скачивания.
При скачивании установщика или двоичного файла с официальной страницы скачивания отображается проверка sum для файла. Нажмите кнопку "Копировать", чтобы скопировать значение проверка sum в буфер обмена.
С помощью PowerShell или командной строки можно проверить проверка sum файла, который вы скачали. Например, следующая команда сообщает проверка sum файла 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
Сравните проверка sum со значением, предоставленным сайтом скачивания.
Проверка с помощью PowerShell и файла проверка sum
Заметки о выпуске .NET содержат ссылку на файл проверка sum, который можно использовать для проверки скачаемого файла. Ниже описано, как скачать файл проверка sum и проверить двоичный файл установки .NET:
Страница заметок о выпуске для .NET 8 на сайте GitHub https://github.com/dotnet/core/tree/main/release-notes/8.0 содержит раздел с именем "Выпуски". Таблица в этом разделе ссылается на скачиваемые файлы и файлы проверка sum для каждого выпуска .NET 8:
Выберите ссылку для скачаемой версии .NET. Предыдущий раздел использовал пакет SDK для .NET 8.0.100, который находится в выпуске .NET 8.0.0.
Совет
Если вы не уверены, какой выпуск .NET содержит файл проверка sum, изучите ссылки, пока не найдете его.
На странице выпуска можно увидеть версию пакета SDK для .NET и .NET, а также ссылку на файл проверка sum:
Скопируйте ссылку на файл проверка sum.
Используйте следующий скрипт, но замените ссылку, чтобы скачать соответствующий файл проверка sum:
Invoke-WebRequest https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt -OutFile 8.0.0-sha.txt
С помощью файла проверка sum и файла выпуска .NET, скачаемого в тот же каталог, выполните поиск файла проверка sum для проверка sum загрузки .NET:
При прохождении проверки отображается значение True :
> (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
Если отображается значение False , скачанный файл недействителен и не должен использоваться.
Сведения о среде выполнения
Среда выполнения используется для запуска приложений, созданных с помощью .NET. При публикации приложения автор может включить среду выполнения в его состав. В противном случае устанавливать среду выполнения будет пользователь.
Существует три разных среды выполнения .NET, которые можно установить, однако следует установить как среду выполнения рабочего стола .NET, так и среду выполнения ASP.NET Core для обеспечения максимальной совместимости со всеми типами приложений .NET. В следующей таблице описывается, что входит в состав каждой среды выполнения:
Включает среду выполнения .NET | Включает среду выполнения рабочего стола .NET | Включает ASP.NET базовую среду выполнения | |
---|---|---|---|
Среда выполнения .NET | Да | No | No |
Среда выполнения рабочего стола .NET | Да | Да | Нет |
ASP.NET базовая среда выполнения | No | No | Да |
В следующем списке содержатся сведения о каждой среде выполнения:
Среда выполнения рабочего стола
Используется для запуска классических приложений .NET WPF и Windows Forms для Windows. Включает среду выполнения .NET.ASP.NET базовая среда выполнения
Используется для запуска приложений ASP.NET Core.Среда выполнения .NET
Простейшая среда выполнения, в состав которой не входят какие-либо другие среды выполнения. Установите ASP.NET Core Runtime и Desktop Runtime для обеспечения оптимальной совместимости с приложениями .NET.
Сведения о пакете SDK
Пакет SDK используется для создания и публикации приложений и библиотек .NET. Установка пакета SDK включает все три среды выполнения: ASP.NET Core, Desktop и .NET.
Компьютеры Windows на базе ARM
В следующих разделах описываются аспекты, которые следует учитывать при установке .NET на компьютере Windows на базе ARM.
Поддерживаемые возможности
В следующей таблице описаны версии .NET, поддерживаемые на компьютерах Windows на базе ARM:
Версия .NET | Архитектура | SDK | Параметры выполнения | Конфликт путей |
---|---|---|---|---|
8 | Arm64 | Да | Да | Нет |
8 | x64 | Да | Да | Нет |
7 | Arm64 | Да | Да | Нет |
7 | x64 | Да | Да | Нет |
6 | Arm64 | Да | Да | Нет |
6 | x64 | Да | Да | Нет |
5 | Arm64 | Да | Да | Да |
5 | x64 | No | Да | Да |
Версии пакета SDK для .NET 64 и Arm64 существуют независимо друг от друга. Если выпущена новая версия, необходимо обновить каждую установку архитектуры.
Различия в путях
На компьютере с Windows на основе Arm все версии Arm64 .NET устанавливаются в обычную папку C:\Program Files\dotnet\ . Однако версия пакета SDK для .NET установлена в папку C:\Program Files\dotnet\x64\.
Конфликты путей
Пакет SDK для x64 .NET устанавливается в собственный каталог, как описано в предыдущем разделе. Это позволяет существовать на одном компьютере версии пакета SDK для .NET для Arm64 и x64. Однако любой пакет SDK x64 до 6 не поддерживается и устанавливается в то же расположение, что и версия Arm64 , папка C:\Program Files\dotnet\ . Если вы хотите установить неподдерживаемый пакет SDK x64, сначала необходимо удалить версию Arm64. Наоборот, необходимо удалить неподдерживаемый пакет SDK x64 для установки версии Arm64.
Переменные пути
Переменные среды, добавляющие .NET в системный PATH
путь, например переменную, могут быть изменены, если установлены версии пакета SDK для .NET для x64 и Arm64. Кроме того, некоторые средства полагаются на DOTNET_ROOT
переменную среды, которая также должна быть обновлена, чтобы указать соответствующую папку установки пакета SDK для .NET.
Зависимости
В .NET 8 поддерживаются следующие версии Windows:
Примечание.
Символ +
представляет минимальную версию.
ОС | Версия | Архитектуры |
---|---|---|
Windows 11 | 22000+ | x64, x86, ARM64 |
Клиент Windows 10 | 1607+ | x64, x86, ARM64 |
Windows Server | 2012+ | x64, x86 |
Windows Server Core | 2012+ | x64, x86 |
Nano Server | 1809+ | x64 |
Дополнительные сведения о поддерживаемых операционных системах, дистрибутивах и политике жизненного цикла .NET 8 см . в поддерживаемых версиях ОС .NET 8.
Windows 7 / 8.1 / Server 2012
При установке пакета SDK для .NET или среды выполнения .NET в следующих версиях Windows требуются дополнительные зависимости:
Операционная система | Необходимые компоненты |
---|---|
Windows 7 с пакетом обновления 1 (SP1), ESU | – Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядный – Обновление KB3063858, 64-разрядное / 32-разрядное - Центр корневой сертификации Microsoft 2011 (только удаленный установщик .NET Core 2.1) |
Windows 8.1 | Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядный |
Windows Server 2012 | Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядный |
Windows Server 2012 R2 | Распространяемый компонент Microsoft Visual C++ 2015–2019, 64-разрядный / 32-разрядный |
Приведенные выше требования также применяются, если возникает ошибка, связанная с любой из следующих библиотек DLL:
- api-ms-win-crt-runtime-l1-1-0.dll
- api-ms-win-cor-timezone-l1-1-0.dll
- hostfxr.dll
Docker
Контейнеры обеспечивают простой способ изоляции приложения от остальной части основной системы. Контейнеры на одном компьютере совместно использую только ядро, а также используют ресурсы, которые передаются в приложение.
.NET можно выполнять в контейнере Docker. Официальные образы Docker для .NET публикуются в реестре контейнеров Microsoft (MCR), и доступ к ним можно получить в репозитории Microsoft .NET Docker Hub. Каждый репозиторий содержит рабочие образы для разных сочетаний .NET (пакета SDK или среды выполнения) и операционной системы.
Корпорация Майкрософт предоставляет образы, которые предназначены для конкретных сценариев. Например репозиторий ASP.NET Core содержит образы, которые предназначены для запуска приложений ASP.NET Core в рабочей среде.
Дополнительные сведения об использовании .NET в контейнере Docker см. в статьях Введение в .NET и Docker и Примеры.
Устранение неполадок
После установки пакета SDK для .NET могут возникнуть проблемы, связанные с выполнением команд .NET CLI. В этом разделе собираются распространенные проблемы и предоставляются решения.
Пакет SDK для .NET не найден
Скорее всего, вы установили версии x86 (32-разрядная версия) и x64 (64-разрядная версия пакета SDK для .NET). Это приводит к конфликту, так как при выполнении dotnet
команды она разрешается в версию x86, когда она должна разрешаться в версию x64. Обычно это исправлено путем настройки переменной %PATH%
, чтобы сначала разрешить версию x64.
Убедитесь, что установлены обе версии, выполнив
where.exe dotnet
команду. Если это сделать, вы увидите запись для папок Program Files\ и Program Files (x86)\ . Если папка Program Files (x86)\ является первой, как показано в следующем примере, это неправильно, и вы должны продолжить переход к следующему шагу.> where.exe dotnet C:\Program Files (x86)\dotnet\dotnet.exe C:\Program Files\dotnet\dotnet.exe
Если это правильно, и program Files\ первый, у вас нет проблемы, которую обсуждает этот раздел, и вы должны создать проблему с запросом справки .NET на GitHub
Нажмите кнопку Windows и введите "Изменить системные переменные среды" в поиск. Выберите "Изменить системные переменные среды".
Откроется окно "Свойства системы" на вкладке "Дополнительно". Выберите переменные среды.
В окне "Переменные среды" в группе системных переменных выберите строку Path* и нажмите кнопку "Изменить".
Используйте кнопки перемещения вверх ивниз, чтобы переместить запись C:\Program Files\dotnet\ выше C:\Program Files (x86)\dotnet\.
Создание приложений медленнее, чем ожидалось
Убедитесь, что smart App Control, компонент Windows, отключен. Интеллектуальный элемент управления приложениями не рекомендуется включать на компьютерах, используемых для разработки. Любой параметр, отличный от "off", может отрицательно повлиять на производительность пакета SDK.
Следующие шаги
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по