Поделиться через


Общие сведения об ASP.NET Core

Авторы: Дэниэл Рот (Daniel Roth), Рик Андерсон (Rick Anderson) и Шон Луттин (Shaun Luttin)

Примечание.

Это не последняя версия этой статьи. В текущем выпуске см. статью версии .NET 9.

Предупреждение

Эта версия ASP.NET Core больше не поддерживается. Дополнительные сведения см. в политике поддержки .NET и .NET Core. В текущем выпуске смотрите версию .NET 9 этой статьи.

Внимание

Эта информация относится к предварительному выпуску продукта, который может быть существенно изменен до его коммерческого выпуска. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.

В текущей версии смотрите версию .NET 9 этой статьи.

ASP.NET Core является кроссплатформенной, высокопроизводительной средой с открытым исходным кодом для создания современных облачных приложений, подключенных к Интернету.

ASP.NET Core позволяет выполнять следующие задачи:

  • Создание веб-приложений и служб, Azure IoT (Интернет вещей) приложений и мобильных серверных служб.
  • Используйте любимые средства разработки на Windows, macOS и Linux.
  • Развертывать в облаке или на месте.
  • Запустите в .NET.

Почему стоит выбирать ASP.NET Core?

Миллионы разработчиков использовали и продолжают использовать ASP.NET 4.x для создания веб-приложений. ASP.NET Core — это модификация ASP.NET 4.x с архитектурными изменениями, формирующими более рациональную и более модульную платформу.

ASP.NET Core предоставляет следующие преимущества:

Создание веб-API и пользовательского веб-интерфейса с помощью ASP.NET Core MVC

ASP.NET Core MVC предоставляет функции, которые позволяют создавать веб-интерфейсы API и веб-приложения.

Клиентская разработка

ASP.NET Core включает в себя Blazor для создания богатого интерактивного веб-интерфейса, а также интегрируется с другими популярными JavaScript фреймворками, такими как Angular, React, Vue и Bootstrap. Подробнее см. в статье ASP .NET CoreBlazor и сопутствующих материалах в разделе Разработка на стороне клиента.

Целевые платформы ASP.NET Core

ASP.NET Core 3.x или более поздних версий может нацеливаться только на .NET.

Существует несколько преимуществ в ориентации на .NET, и эти преимущества увеличиваются с каждой новой версией. Некоторые преимущества .NET по сравнению с платформой .NET Framework включают:

  • Кроссплатформенность. Выполняется в Windows, macOS и Linux.
  • Улучшение производительности
  • Сосуществование версий
  • Новые интерфейсы API
  • Открытый исходный код

Для знакомства с разработкой приложений ASP.NET Core рекомендуется изучить следующую последовательность учебников.

  1. Пройдите учебник по тому типу приложения, которое вы собираетесь разрабатывать или обслуживать.

    Тип приложения Сценарий Учебник
    Веб-приложение Разработка нового веб-интерфейса на стороне сервера Начните работать с Razor Pages
    Веб-приложение Обслуживание приложения MVC Начало работы с MVC
    Веб-приложение Разработка веб-интерфейса на стороне клиента Начало работы с Blazor
    Веб-интерфейс API HTTP-сервисы RESTful Создание веб-API
    Программа удаленного вызова процедур Разработка в соответствии с парадигмой "Сначала контракт" с использованием Protocol Buffers Как начать работу со службой gRPC
    Приложение режима реального времени Двунаправленный обмен данными между сервером и подключенными к нему клиентами Начало работы с SignalR
  2. Пройдите учебник, посвященный основам доступа к данным.

    Сценарий Учебник
    Новая разработка Razor Страницы с Entity Framework Core
    Обслуживание приложения MVC MVC с Entity Framework Core
  3. Ознакомьтесь с обзором основ ASP.NET Core, относящихся ко всем типам приложений.

  4. Просмотрите содержание, чтобы найти другие интересующие вас темы.

†Доступен интерактивный учебник по веб-API. Локальная установка средств разработки не требуется. Код выполняется в Azure Cloud Shell в браузере, а для тестирования используется curl.

Переход с .NET Framework

Справочное руководство по переносу приложений ASP.NET 4.x в ASP.NET Core см. в разделе "Обновление от ASP.NET до ASP.NET Core".

ASP.NET Core является кроссплатформенной, высокопроизводительной средой с открытым исходным кодом для создания современных облачных приложений, подключенных к Интернету. ASP.NET Core позволяет выполнять следующие задачи:

  • Создание веб-приложений и служб, Azure IoT (Интернет вещей) приложений и мобильных серверных служб.
  • Используйте ваши любимые средства разработки в Windows, macOS и Linux.
  • Выполнять развертывания в облаке или локальной среде.
  • Работать в .NET Core или .NET Framework.

Почему выбрать ASP.NET Core?

Миллионы разработчиков использовали и продолжают использовать ASP.NET 4.x для создания веб-приложений. ASP.NET Core — это модификация ASP.NET 4.x с архитектурными изменениями, формирующими более рациональную и более модульную платформу.

ASP.NET Core предоставляет следующие преимущества:

Создание веб-API и пользовательского веб-интерфейса с помощью ASP.NET Core MVC

ASP.NET Core MVC предоставляет функции, которые позволяют создавать веб-интерфейсы API и веб-приложения.

Клиентская разработка

ASP.NET Core легко интегрируется с популярными клиентскими платформами и библиотеками, включая BlazorAngular, React, Vue и Bootstrap. Подробнее см. в статье ASP .NET CoreBlazor и сопутствующих материалах в разделе Разработка на стороне клиента.

ASP.NET Core для платформы .NET Framework

ASP.NET Core 2.x может быть нацелен на .NET Core или .NET Framework. Приложения ASP.NET Core, предназначенные для .NET Framework, не являются кроссплатформенными — они выполняются только в Windows. Как правило, ASP.NET Core 2.x состоит из библиотек .NET Standard. Библиотеки, написанные с использованием .NET Standard 2.0, работают на любой платформе .NET, которая реализует .NET Standard 2.0.

ASP.NET Core 2.x поддерживается в версиях .NET Framework с реализацией .NET Standard 2.0:

  • Рекомендуется использовать последнюю версию .NET Framework.
  • .NET Framework 4.6.1 или более поздней версии.

ASP.NET Core 3.0 или более поздней версии работает только в .NET Core. Дополнительные сведения об этом изменении см. в разделе Первое знакомство с предстоящими изменениями в ASP.NET Core 3.0.

При использовании .NET Core существуют некоторые преимущества, и их число увеличивается с каждым выпуском. Преимущества .NET Core по сравнению с .NET Framework включают:

Благодаря пакету обеспечения совместимости Windows в .NET Core доступны тысячи API-интерфейсов, созданных только для Windows, что позволяет расширить диапазон API при переходе с .NET Framework на .NET Core. Эти API-интерфейсы не были доступны в .NET Core 1.x.

Для знакомства с разработкой приложений ASP.NET Core рекомендуется изучить следующую последовательность учебников и статей.

  1. Пройдите учебник по тому типу приложения, которое вы собираетесь разрабатывать или обслуживать.

    Тип приложения Сценарий Учебник
    Веб-приложение Для нового развития Начало работы с Razor Pages
    Веб-приложение Для поддержки приложения MVC Начало работы с MVC
    Веб-интерфейс API Создание веб-API
    Приложение режима реального времени Начало работы с SignalR
  2. Пройдите учебник, посвященный основам доступа к данным.

    Сценарий Учебник
    Для новой разработки Razor Страницы с Entity Framework Core
    Для поддержания работы приложения MVC MVC с Entity Framework Core
  3. Ознакомьтесь с обзором основ ASP.NET Core, относящихся ко всем типам приложений.

  4. Просмотрите содержание, чтобы найти другие интересующие вас темы.

†Доступен новый учебник по веб-API с прохождением в браузере, не требующий установки локальной интегрированной среды разработки. Код выполняется в Azure Cloud Shell, а для тестирования используется curl.

Миграция с платформы .NET Framework на другую платформу

Справочное руководство по переносу приложений ASP.NET в ASP.NET Core см. в разделе "Обновление от ASP.NET до ASP.NET Core".

Загрузка примера

Многие статьи и учебники содержат ссылки на примеры кода.

  1. Загрузите ZIP-файл репозитория ASP.NET.
  2. Распакуйте файл AspNetCore.Docs-main.zip.
  3. Чтобы получить доступ к примеру приложения из статьи в распакованном репозитории, используйте URL-адрес примера ссылки из статьи для перехода к папке примера. Как правило, пример ссылки из статьи отображается в ее верхней части. Текст ссылки: Просмотрите или загрузите пример кода.

Директивы препроцессора в примере кода

Для демонстрации нескольких сценариев в примерах приложений используются директивы препроцессора #define и #if-#else/#elif-#endif, выборочно компилирующие и запускающие разные фрагменты примеров кода. В примерах, где применяется этот подход, задайте в начале файлов C# директиву #define для определения символа, связанного со сценарием, который нужно запустить. Для запуска сценария в некоторых примерах потребуется определить символ в начале нескольких файлов.

Например, в следующем списке символов #define видно, что доступно четыре сценария (один сценарий на символ). В текущем примере конфигурации запускается сценарий TemplateCode:

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

Чтобы запустить в примере сценарий ExpandDefault, задайте символ ExpandDefault и оставьте остальные символы раскомментированными:

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

Дополнительные сведения об использовании директив препроцессора C# для выборочной компиляции фрагментов кода см. в разделах #define (Справочник по C#) и #if (Справочник по C#).

Критические изменения и советы по безопасности

Критические изменения и рекомендации по безопасности отображаются в репозитории объявлений. Объявления можно ограничить до определенной версии, выбрав фильтр Метка.

Следующие шаги

Дополнительные сведения см. на следующих ресурсах: