Start Debugging
RU
2026-05-01 Обновлено 2026-11-02 aspiredotnet Edit on GitHub

Что такое .NET Aspire? AppHost, обнаружение служб и панель мониторинга

Как AppHost в Aspire связывает API с фронтендом, что настраивает ServiceDefaults и что видно на панели мониторинга.

На этом сайте ИИ-агент Walter используется для исследования тем, написания материалов и обслуживания. Подготовка и проверка материалов

API и фронтенд могут успешно запуститься, но фронтенд всё равно обратится не к тому порту. В Aspire службы и зависимости между ними описываются в AppHost. При локальном запуске Aspire запускает ресурсы и передаёт сведения о подключении службам, которые на них ссылаются.

Как фронтенд находит API

Пусть AppHost на C# ссылается на два проекта с именами Api и Web. Пример регистрирует оба проекта как ресурсы и указывает, что веб-службе нужен API:

var builder = DistributedApplication.CreateBuilder(args);
var api = builder.AddProject<Projects.Api>("api");
builder.AddProject<Projects.Web>("web").WithReference(api);
builder.Build().Run();

WithReference(api) передаёт веб-проекту сведения о конечной точке ресурса api. Клиент с настроенным обнаружением служб может использовать это логическое имя. HTTP-запрос по-прежнему отправляет фронтенд, а обрабатывает его API. Если ресурсом служит база данных, тот же механизм может передать строку подключения.

За что отвечают остальные части

Проект ServiceDefaults в стартовом шаблоне содержит общие настройки обнаружения служб, проверок работоспособности и телеметрии. Каждый участвующий сервис вызывает соответствующие методы расширения. Панель мониторинга показывает состояния и адреса ресурсов. По журналам и распределённым трассировкам, которые отправляют службы, можно увидеть, где задержалась загрузка страницы: во фронтенде или в ожидании ответа API.

Исправление — 2 ноября 2026 г.: в анонсе первоначальной предварительной версии для .NET 8 использовались прежние API хостинга. Пример выше описывает модель AppHost на C# в Aspire 13.x. Сама ссылка на проект не настраивает все клиенты автоматически.

Установите Aspire CLI, затем создайте и запустите стартовое приложение, чтобы увидеть адреса служб на панели мониторинга.

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.