Выбор пользовательского веб-интерфейса ASP.NET Core

ASP.NET Core — это полноценная платформа пользовательского интерфейса. Выберите, какие функциональные возможности следует объединить, чтобы соответствовать потребностям пользовательского веб-интерфейса приложения.

ASP.NET Core Blazor

Blazor — это платформа веб-интерфейса с полным стеком и рекомендуется для большинства сценариев веб-интерфейса.

Преимущества использования Blazor:

  • Модель повторно используемых компонентов.
  • Эффективное отрисовка компонентов на основе диффа.
  • Гибкий отрисовка компонентов с сервера или клиента с помощью WebAssembly.
  • Создание расширенных интерактивных компонентов веб-интерфейса в C#.
  • Отрисовка компонентов статически с сервера.
  • Постепенно расширяйте отрисованные сервером компоненты для более плавной навигации и обработки форм и включения потоковой отрисовки.
  • Общий доступ к коду для общей логики на клиенте и сервере.
  • Взаимодействие с JavaScript.
  • Интеграция компонентов с существующими приложениями на основе MVC, Razor Pages или JavaScript.

Полный обзор Blazorархитектуры и преимуществ см. в ASP.NET основных Blazor и ASP.NET моделях размещения CoreBlazor. Чтобы приступить к работе с первым приложением, см. статью "Создание первого BlazorBlazor приложения".

Razor Pages в ASP.NET Core

Razor Pages — это модель на основе страниц для создания отрисованного веб-интерфейса сервера. Razor Пользовательский интерфейс страниц динамически отрисовывается на сервере, чтобы создать HTML-код и CSS страницы в ответ на запрос браузера. Страница поступает на клиент уже готовая для просмотра. Поддержка Razor Pages осуществляется на базе ASP.NET Core MVC.

Razor Преимущества страниц:

  • Быстрое создание и обновление пользовательского интерфейса. Код страницы хранится на странице. Задачи, связанные с пользовательским интерфейсом и бизнес-логикой, хранятся отдельно.
  • Возможность выполнить проверку и масштабирование больших приложений.
  • Упорядочение ASP.NET основных страниц проще, чем ASP.NET MVC:
    • Логику и модели представлений можно хранить вместе в их пространстве имен и каталоге.
    • Группы связанных страниц могут храниться вместе в собственном пространстве имен и каталоге.

Чтобы приступить к работе с первым приложением ASP.NET Core Razor Pages, см. Учебник. Начало работы с Razor Pages в ASP.NET Core. Полный обзор ASP.NET Core Razor Pages, его архитектуры и преимуществ см. в статье Введение в Razor Pages в ASP.NET Core.

ASP.NET Core MVC

ASP.NET Core MVC отображает пользовательский интерфейс на сервере и использует шаблон архитектуры Model-View-Controller (MVC). Шаблон MVC отделяет приложение от трех основных групп компонентов: моделей, представлений и контроллеров. Запросы пользователей направляются в контроллер. Контроллер отвечает за работу с моделью для выполнения действий пользователей и получения результатов запросов. Контроллер выбирает представление для отображения пользователю и предоставляет ему все необходимые данные модели.

преимущества ASP.NET Core MVC:

  • Основывается на масштабируемой и продуманной модели для создания крупных веб-приложений.
  • Четкое разделение задач для максимальной гибкости.
  • Разделение обязанностей на основе шаблона "Модель — представление — контроллер" гарантирует, что бизнес-модель можно легко развивать, не затрагивая при этом реализацию возможностей более низкого уровня.

Сведения о начале работы с ASP.NET Core MVC см. в статье Начало работы с ASP.NET Core MVC. Общие сведения об архитектуре и преимуществах ASP.NET Core MVC см. в статье Общие сведения ASP.NET Core MVC.

ASP.NET основных одностраничных приложений (SPA) с интерфейсными платформами JavaScript

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

Преимущества SPA в ASP.NET Core SPA с платформами JavaScript в дополнение к приведенным выше преимуществам отрисовки клиента:

  • Среда выполнения JavaScript уже предоставлена вместе с браузером.
  • Большое сообщество и продуманная экосистема.
  • Создание клиентской логики для приложений ASP.NET Core с помощью популярных JS платформ, таких как Angular, React и Vue.

Недостатки:

  • Требуются дополнительные языки программирования, платформы и средства.
  • Сложно обмениваться кодом, поэтому некоторая логика может дублироваться.

Чтобы начать работу, см. следующие статьи.

Выбор гибридного решения: ASP.NET Core MVC или Razor Pages в сочетании с Blazor

MVC, Razor Pages и Blazor являются частью платформы ASP.NET Core и разработаны для совместного использования. Компоненты Razor можно интегрировать в приложения MVC и Razor Pages. Одновременно с отрисовкой страницы или представления можно выполнять предварительную обработку компонентов.

Преимущества MVC или Razor Pages в сочетании с Blazor, которые дополняют обычные преимуществам MVC и Razor Pages:

  • предварительная отрисовка выполняет компоненты Razor на сервере и отрисовывает их в виде представления или страницы, что улучшает восприятие скорости загрузки приложения.
  • Добавление интерактивности в существующие представления (страницы) с помощью вспомогательной функции тега компонента.

Чтобы приступить к работе с ASP.NET Core MVC или Razor Pages плюс Blazor, см. раздел "Интеграция компонентов ASP.NET Core Razor " в приложения ASP.NET Core.

Дальнейшие действия

Дополнительные сведения см. в разделе:

ASP.NET Core — это полноценная платформа пользовательского интерфейса. Выберите, какие функциональные возможности следует объединить, чтобы соответствовать потребностям пользовательского веб-интерфейса приложения.

ASP.NET Core Blazor

Blazor — это платформа веб-интерфейса с полным стеком и рекомендуется для большинства сценариев веб-интерфейса.

Преимущества использования Blazor:

  • Модель повторно используемых компонентов.
  • Эффективное отрисовка компонентов на основе диффа.
  • Гибкий отрисовка компонентов с сервера или клиента с помощью WebAssembly.
  • Создание расширенных интерактивных компонентов веб-интерфейса в C#.
  • Отрисовка компонентов статически с сервера.
  • Постепенно расширяйте отрисованные сервером компоненты для более плавной навигации и обработки форм и включения потоковой отрисовки.
  • Общий доступ к коду для общей логики на клиенте и сервере.
  • Взаимодействие с JavaScript.
  • Интеграция компонентов с существующими приложениями на основе MVC, Razor Pages или JavaScript.

Полный обзор Blazorархитектуры и преимуществ см. в ASP.NET основных Blazor и ASP.NET моделях размещения CoreBlazor. Чтобы приступить к работе с первым приложением, см. статью "Создание первого BlazorBlazor приложения".

Razor Pages в ASP.NET Core

Razor Pages — это модель на основе страниц для создания отрисованного веб-интерфейса сервера. Razor Пользовательский интерфейс страниц динамически отрисовывается на сервере, чтобы создать HTML-код и CSS страницы в ответ на запрос браузера. Страница поступает на клиент уже готовая для просмотра. Поддержка Razor Pages осуществляется на базе ASP.NET Core MVC.

Razor Преимущества страниц:

  • Быстрое создание и обновление пользовательского интерфейса. Код страницы хранится на странице. Задачи, связанные с пользовательским интерфейсом и бизнес-логикой, хранятся отдельно.
  • Возможность выполнить проверку и масштабирование больших приложений.
  • Упорядочение ASP.NET основных страниц проще, чем ASP.NET MVC:
    • Логику и модели представлений можно хранить вместе в их пространстве имен и каталоге.
    • Группы связанных страниц могут храниться вместе в собственном пространстве имен и каталоге.

Чтобы приступить к работе с первым приложением ASP.NET Core Razor Pages, см. Учебник. Начало работы с Razor Pages в ASP.NET Core. Полный обзор ASP.NET Core Razor Pages, его архитектуры и преимуществ см. в статье Введение в Razor Pages в ASP.NET Core.

ASP.NET Core MVC

ASP.NET Core MVC отображает пользовательский интерфейс на сервере и использует шаблон архитектуры Model-View-Controller (MVC). Шаблон MVC отделяет приложение от трех основных групп компонентов: моделей, представлений и контроллеров. Запросы пользователей направляются в контроллер. Контроллер отвечает за работу с моделью для выполнения действий пользователей и получения результатов запросов. Контроллер выбирает представление для отображения пользователю и предоставляет ему все необходимые данные модели.

преимущества ASP.NET Core MVC:

  • Основывается на масштабируемой и продуманной модели для создания крупных веб-приложений.
  • Четкое разделение задач для максимальной гибкости.
  • Разделение обязанностей на основе шаблона "Модель — представление — контроллер" гарантирует, что бизнес-модель можно легко развивать, не затрагивая при этом реализацию возможностей более низкого уровня.

Сведения о начале работы с ASP.NET Core MVC см. в статье Начало работы с ASP.NET Core MVC. Общие сведения об архитектуре и преимуществах ASP.NET Core MVC см. в статье Общие сведения ASP.NET Core MVC.

ASP.NET основных одностраничных приложений (SPA) с интерфейсными платформами JavaScript

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

Преимущества SPA в ASP.NET Core SPA с платформами JavaScript в дополнение к приведенным выше преимуществам отрисовки клиента:

  • Среда выполнения JavaScript уже предоставлена вместе с браузером.
  • Большое сообщество и продуманная экосистема.
  • Создание клиентской логики для приложений ASP.NET Core с помощью популярных JS платформ, таких как Angular, React и Vue.

Недостатки:

  • Требуются дополнительные языки программирования, платформы и средства.
  • Сложно обмениваться кодом, поэтому некоторая логика может дублироваться.

Чтобы начать работу, см. следующие статьи.

Выбор гибридного решения: ASP.NET Core MVC или Razor Pages в сочетании с Blazor

MVC, Razor Pages и Blazor являются частью платформы ASP.NET Core и разработаны для совместного использования. Компоненты Razor можно интегрировать в приложения MVC и Razor Pages. Одновременно с отрисовкой страницы или представления можно выполнять предварительную обработку компонентов.

Преимущества MVC или Razor Pages в сочетании с Blazor, которые дополняют обычные преимуществам MVC и Razor Pages:

  • предварительная отрисовка выполняет компоненты Razor на сервере и отрисовывает их в виде представления или страницы, что улучшает восприятие скорости загрузки приложения.
  • Добавление интерактивности в существующие представления (страницы) с помощью вспомогательной функции тега компонента.

Чтобы приступить к работе с ASP.NET Core MVC или Razor Pages плюс Blazor, см. раздел "Интеграция компонентов ASP.NET Core Razor " в приложения ASP.NET Core.

Чтобы начать работу с ASP.NET Core MVC или Razor Pages в сочетании с Blazor, воспользуйтесь статьей Компоненты Razor для предварительной визуализации и интеграции ASP.NET Core.

Дальнейшие действия

Дополнительные сведения см. в разделе: