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

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

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

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

  • Создавать веб-приложения и службы, приложения Интернета вещей (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 включают:

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

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

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

    Сценарий Учебник
    Разработка нового приложения Razor Pages с 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 позволяет выполнять следующие задачи:

  • Создавать веб-приложения и службы, приложения Интернета вещей (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 Pages с 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#).

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

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

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

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