Что такое пакет SDK для .NET?
Пакет SDK для .NET — это набор библиотек и инструментов, которые разработчики используют для создания приложений и библиотек .NET. Он содержит следующие компоненты, которые используются для сборки и запуска приложений:
- Интерфейс командной строки .NET.
- Среда выполнения и библиотеки .NET.
- Драйвер dotnet .
Установка пакета SDK для .NET
Как и при использовании любого инструмента, первым шагом является получение инструментов на компьютере. В зависимости от сценария вы можете установить пакет SDK одним из следующих методов:
- Использовать собственные установщики.
- Использовать скрипт оболочки для установки.
Собственные установщики в основном предназначены для компьютеров разработки. Пакет SDK распространяется посредством собственного механизма установки каждой поддерживаемой платформы, например пакетов DEB в Ubuntu или пакетов MSI в Windows. Эти установщики устанавливают и настраивают среду в соответствии с требованиями пользователя, чтобы он мог использовать пакет SDK сразу после установки. Однако они требуют прав администратора на компьютере. Вы найдете пакет SDK для установки на странице загрузок .NET.
Скрипты установки, с другой стороны, не требуют прав администратора. Но они не устанавливают все необходимые компоненты на компьютере; вы должны установить их вручную. Скрипты предназначены в основном для настройки серверов сборки или при необходимости установки средств без прав администратора. Дополнительные сведения см. в справочнике по скриптам установки. Сведения о настройке пакета SDK на сервере сборки CI см. в разделе «Использование пакета SDK для .NET в средах непрерывной интеграции (CI).
По умолчанию пакет SDK устанавливается в режиме «параллельно» (SxS), что означает, что несколько версий могут сосуществовать на одном компьютере. Сведения о том, как версия выбирается при выполнении команд CLI, см. в разделе «Выбор версии .NET для использования».
Руководство по обеспечению безопасности
Пакет SDK для .NET находит и выполняет различные средства, которые будут отправляться в виде отдельных исполняемых двоичных файлов в пакете SDK. В большинстве случаев пакет SDK может определить полный путь к исполняемому файлу. Однако существуют исключения, в которых пакет SDK не может определить путь и зависит от входных данных пользователя. Возможно, пользователь может предоставить входные данные, которые приводят к выполнению вредоносного программного обеспечения пакета SDK для .NET. По этой причине не следует доверять репозиториям с двоичными файлами, которые соответствуют определенным именам файлов в расположении установки пакета SDK, например msbuild.exe. Пакет SDK устанавливается в папку с версиями, например C:\Program Files\dotnet\sdk\7.0.400\ в Windows или /usr/bin/share/dotnet/sdk/7.0.400 в Linux.
См. также
- Скачивание .NET
- Обзор интерфейса командной строки .NET
- Обзор управления версиями .NET
- Удаление среды выполнения .NET и пакета SDK
- Выбор версии .NET для использования
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Пакет SDK для приложений Windows
Пакет SDK для приложений Windows — это набор компонентов и инструментов для разработчиков, которые представляют новый этап развития платформы для разработки приложений для Windows. Пакет SDK для приложений Windows предоставляет унифицированный набор API-интерфейсов и средств, которые можно единообразно применять для любого классического приложения в операционных системах Windows 11 и более ранних версий, вплоть до Windows 10 версии 1809.
Windows App SDK не заменяет ни Windows SDK, ни существующие типы классических приложений Windows, например .NET (включая Windows Forms и WPF) и классические приложения Win32 на языке C++. Вместо этого пакет SDK для приложений Windows дополняет существующие инструменты и типы приложений общим набором API, которые разработчики могут полагаться на этих платформах. Дополнительные сведения см. в разделе Преимущества пакета SDK для приложений Windows.
Если вы работаете с приложением UWP, перейдите к разделу «Миграция из UWP» в пакет SDK для приложений Windows.
Начало работы с пакетом SDK для приложений Windows
Пакет SDK для приложений Windows предоставляет расширения для Visual Studio 2022 и Visual Studio 2019. Эти расширения включают шаблоны проектов, настроенные для использования компонентов пакета SDK для приложений Windows в новых проектах. Кроме того, библиотеки пакета SDK для приложений Windows доступны через пакет NuGet, который можно установить в существующих проектах.
Сведения о настройке Visual Studio для создания новых проектов пакета SDK для приложений Windows см. в статье «Установка средств для пакета SDK для приложений Windows», в частности в разделе, в который перечислены необходимые рабочие нагрузки и компоненты для Visual Studio.
Если вы уже установили необходимые средства разработчика, вы готовы создать первый проект WinUI 3. Вы также можете использовать пакет SDK для приложений Windows в существующем проекте.
Рекомендации по конкретным версиям пакета Windows App SDK см. в статьях Каналы выпуска и Файлы для загрузки.
Функции пакета SDK для приложений для Windows
В следующей таблице описаны функции разработки, предоставляемые текущими выпусками пакета SDK для приложений для Windows. Дополнительные сведения о каналах выпуска пакета SDK для приложений для Windows, включая сведения о каждой из этих функций, см. в разделе Функции, доступные через канал выпуска.
Функция | Description |
---|---|
WinUI 3 | Главная собственная платформа пользовательского интерфейса для классических приложений для Windows, включая управляемые приложения, использующие C# и .NET, и собственные приложения, использующие C++ с API Win32. WinUI 3 предоставляет согласованные интуитивно понятный и доступный интерфейс с возможностью использования новейших шаблонов пользовательского интерфейса. |
Отрисовка текста с помощью DWriteCore | Визуализируйте текст с помощью независимой от устройства системы макета текста, функции высококачественного субпиксельного рендеринга текста Microsoft ClearType, возможностей текста с аппаратным ускорением и многоформатного текста, широкой языковой поддержки и многого другого. |
Управление ресурсами с помощью MRT Core | Управляйте ресурсами приложений, такими как строки и изображения на нескольких языках, а также масштабированием и контрастностью вариантов независимо от логики приложения. |
Жизненный цикл приложения: создание экземпляров приложений | Управляйте возможностью одновременного выполнения нескольких экземпляров процесса приложения. |
Жизненный цикл приложения: расширенная активация | Обрабатывайте сведения о разных видах активаций для приложения. |
Жизненный цикл приложения: управление питанием | Узнайте, как ваше приложение влияет на энергопотребление устройства, и разрешите приложению принимать интеллектуальные решения об использовании ресурсов. |
Управление окнами приложений | Создавайте и администрируйте окна, связанные с приложением. |
Push-уведомления | Отправка необработанных уведомлений и уведомлений о приложениях в приложение из облака с помощью удостоверений регистрации приложения Azure. |
Уведомления о приложении | Отправляйте уведомления о приложениях в свое приложение посредством локальной среды. |
Развертывание | Развертывание среды выполнения пакета SDK для приложений Windows с помощью неупакованных и упакованных приложений |
Каналы выпуска пакета SDK для приложений Windows
В следующей таблице приведены общие сведения о различных каналах выпуска.
выпуск. | Description |
---|---|
Стабильный | Этот канал поддерживается приложениями в рабочих средах. Он включает только стабильные API. По умолчанию документация по пакету SDK для приложений Windows описывает стабильный выпуск. |
Предварительная версия | Этот канал предоставляет предварительную версию следующего стабильного выпуска. В период между выпуском предварительной и следующей стабильной версий могут быть реализованы критические изменения API. Ссылки на документацию по использованию предварительного выпуска см. в статье Установка инструментов для каналов предварительного и экспериментального выпусков Windows App SDK. |
Экспериментальный | В этом канале представлены экспериментальные функции на ранних этапах разработки. Экспериментальные функции могут быть удалены из следующего выпуска или не выпущены вообще. Ссылки на документацию по использованию экспериментального выпуска см. в статье Установка инструментов для каналов предварительного и экспериментального выпусков Windows App SDK. |
Дополнительные сведения о каналах выпуска пакета SDK для приложений Windows см. в статье Каналы выпуска пакета SDK для приложений Windows.
Преимущества пакета SDK для приложений Windows, которые получат разработчики Windows
Пакет SDK для приложений Windows предоставляет широкий спектр API-интерфейсов Windows с реализациями, не зависящими от ОС, которые предоставляются разработчикам в виде пакетов NuGet. Пакет SDK для приложений Windows не предназначен для замены Windows SDK. Windows SDK будет работать так же, как и раньше, а многие основные компоненты Windows будут совершенствоваться с помощью API, которые предоставляются в выпусках ОС и Windows SDK. Мы рекомендуем разработчикам переходить на пакет SDK для приложений Windows в удобном для себя темпе.
Унифицированное использование API для разных платформ классических приложений
Разработчики, которые хотят создавать классические приложения для Windows, вынуждены выбирать между несколькими платформами и средами приложений. Хотя каждая из таких платформ предоставляет множество функций и API, которые могут использоваться приложениями, созданными с помощью других платформ, некоторые из них могут использовать только определенные платформы. Пакет SDK для приложений Windows унифицирует доступ к API-интерфейсам Windows из классических приложений Windows 11 и Windows 10. Независимо от выбранной вами модели приложений вы получите доступ ко всему набору API-интерфейсов Windows, представленных в пакете SDK для приложений Windows.
Мы планируем и дальше развивать пакет SDK для приложений Windows, устраняя пока сохранившиеся различия между разными моделями приложений. Пакет SDK для приложений Windows будет включать как API WinRT, так и собственные API-интерфейсы C.
Согласованные возможности в разных версиях Windows
Так как API Windows меняются с каждой новой версией ОС, разработчикам нужно использовать такие техники, как адаптивный к версии код, чтобы учесть все различия в версиях, которые может использовать аудитория приложения. Это приводит к усложнению кода и работы разработчиков.
Интерфейсы API пакета SDK для приложений Windows будут работать с ОС Windows 11 и более ранних версий, вплоть до Windows 10 версии 1809. Таким образом, если все ваши клиенты работают с Windows 10 версии 1809 или любой более поздней версии Windows, вы сможете применять новые API-интерфейсы и функции пакета SDK для приложений Windows сразу после их выпуска. При этом вам не придется писать дополнительный код для адаптации к разным версиям.
Увеличенная частота выпусков
Новые API и функции Windows обычно отправляются в основные обновления ОС Windows, которые выпускаются примерно один раз в год (часто реже). Пакет SDK для приложений Windows предоставляет новые выпуски примерно каждые шесть месяцев. Этот курс выпуска гарантирует непрерывность доступа к новейшим инновациям на платформе разработки Windows.
Отзывы и участие в разработке
Мы создаем пакет SDK для приложений Windows как проект с открытым кодом. На нашей странице Github вы найдете дополнительную информацию о том, как мы работаем над пакетом SDK для приложений Windows и как вы можете поучаствовать в разработке. Ознакомьтесь с руководством для участников, если вы хотите задать вопрос, начать обсуждение или предложить функцию. Мы стремимся к тому, чтобы пакет SDK для приложений Windows предоставлял разработчикам максимум преимуществ.
См. также
- Каналы выпуска и заметки о выпуске
- Установка инструментов для Windows App SDK
- Создание простого проекта WinUI 3
- Использование пакета Windows App SDK в существующем проекте
- Развертывание приложений, использующих пакет SDK для приложений для Windows
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Установка .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
winget install Microsoft.DotNet.Runtime.8
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.
Выбор рабочей нагрузки
При установке или изменении 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, изучите ссылки, пока не найдете его.
Invoke-WebRequest https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt -OutFile 8.0.0-sha.txt
> (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
Сведения о среде выполнения
Среда выполнения используется для запуска приложений, созданных с помощью .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.
В .NET 7 поддерживаются следующие версии Windows:
Символ + представляет минимальную версию.
ОС | Версия | Архитектуры |
---|---|---|
Windows 11 | 21H2+ | x64, ARM64 |
Клиент Windows 10 | 1607+ | x64, x86, ARM64 |
Windows Server | 2012+ | x64, x86 |
Windows Server Core | 2012+ | x64, x86 |
Nano Server | 1809+ | x64 |
Дополнительные сведения о поддерживаемых операционных системах, дистрибутивах и политике жизненного цикла .NET 7 см . в поддерживаемых версиях ОС .NET 7.
.NET 6 поддерживает следующие версии Windows:
Символ + представляет минимальную версию.
ОС | Версия | Архитектуры |
---|---|---|
Windows 11 | 21H2+ | x64, ARM64 |
Клиент Windows 10 | 1607+ | x64, x86, ARM64 |
Клиент Windows | 7 с пакетом обновления 1 и более поздних версий (SP1+), 8.1 | x64, x86 |
Windows Server | 2012+ | x64, x86 |
Windows Server Core | 2012+ | x64, x86 |
Nano Server | 1809+ | x64 |
Дополнительные сведения об операционных системах, дистрибутивах и политике жизненного цикла, поддерживаемых .NET 6, см. в статье Поддерживаемые .NET 6 версии ОС.
Автономная установка для Windows 7
Этот раздел относится только к .NET Core 2.1.
При автономной установке для .NET Core 2.1 в Windows 7 убедитесь, что на целевом компьютере установлен последний корневой центр сертификации Майкрософт 2011 .
Средство certmgr.exe позволяет автоматизировать установку сертификата и его получение из Visual Studio или Windows SDK. Следующая команда используется для установки сертификата перед запуском установщика платформы .NET Core 2.1:
certmgr.exe /add MicRooCerAut2011_2011_03_22.crt /s /r localMachine root
Обязательно ознакомьтесь с зависимостями ниже, необходимыми для Windows 7.
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 не найден
- Создание приложений медленнее, чем ожидалось
Пакет 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




Создание приложений медленнее, чем ожидалось
Убедитесь, что smart App Control, компонент Windows, отключен. Интеллектуальный элемент управления приложениями не рекомендуется включать на компьютерах, используемых для разработки. Любой параметр, отличный от «off», может отрицательно повлиять на производительность пакета SDK.
Следующие шаги
- Проверка того, установлена ли платформа .NET.
- Руководство. Руководство по Hello World.
- Руководство. Создание приложения с помощью Visual Studio Code.
- Руководство. Контейнеризация приложения .NET Core.
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Веб-пакет SDK для ASP.NET Core
Microsoft.NET.Sdk.Web — это пакет SDK проекта MSBuild для разработки приложений ASP.NET Core. Приложения ASP.NET Core можно создавать и без этого пакета SDK, однако веб-пакет SDK дает следующие преимущества:
- обеспечивает максимальное удобство разработки;
- рекомендуется для большинства пользователей.
Используйте Web.SDK в проекте:
Возможности, обеспечиваемые веб-пакетом SDK:
- Неявные ссылки:
- общая платформа ASP.NET Core;
- анализаторы, предназначенные для создания приложений ASP.NET Core.
Свойства
Свойство Description DisableImplicitFrameworkReferences Отключает неявную ссылку на общую платформу Microsoft.AspNetCore.App . DisableImplicitAspNetCoreAnalyzers Отключает неявную ссылку на анализаторы ASP.NET Core. DisableImplicitComponentsAnalyzers Отключает неявную ссылку на анализаторы компонентов Razor при сборке приложений Blazor (серверных). Дополнительные сведения о задачах, целевых объектах, свойствах, неявных больших двоичных объектах, глобах, публикации, методах и т. д. см . в файле README в репозитории WebSdk .
Обзор
Microsoft.NET.Sdk.Web — это пакет SDK проекта MSBuild для разработки приложений ASP.NET Core. Приложения ASP.NET Core можно создавать и без этого пакета SDK, однако веб-пакет SDK дает следующие преимущества:
- обеспечивает максимальное удобство разработки;
- рекомендуется для большинства пользователей.
Используйте Web.SDK в проекте:
Веб-пакет SDK импортирует целевые объекты MSBuild, которые позволяют использовать профили публикации и выполнять публикацию с помощью WebDeploy.
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.