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

Как создать и запустить первое приложение Aspire из шаблона

Создайте Aspire-приложение на C# с API и фронтендом Blazor, откройте панель мониторинга и сравните результат с проектом и снимками предварительной версии для .NET 8.

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

Сначала подготовьте Aspire CLI и инструменты для C#. Для нового решения шаблон aspire-starter создаёт службу API, фронтенд Blazor и AppHost, который связывает их. Если решение уже существует, воспользуйтесь руководством по добавлению AppHost к существующим проектам в Aspire 13.4.

Создание приложения и запуск панели мониторинга

В каталоге, где должно появиться новое решение, выполните команды:

aspire new aspire-starter -n HelloAspire -o HelloAspire
cd HelloAspire
aspire run

Ответьте на вопросы шаблона, если они появятся. Первая команда создаёт решение в HelloAspire, последняя запускает AppHost. Откройте адрес панели мониторинга из терминала, затем адрес веб-фронтенда в списке ресурсов. Перейдите на страницу погоды, чтобы отправить запрос от фронтенда к API. На панели изучите журналы служб и трассировку запроса. Для остановки приложения нажмите Ctrl+C в терминале.

В созданном проекте ApiService предоставляет данные, Web их получает, а ServiceDefaults содержит общую конфигурацию. AppHost регистрирует проекты и связывает фронтенд с его зависимостями. Структура шаблона описана в руководстве по началу работы на C#, а механизм ссылок на ресурсы — в обзоре Aspire.

Архив: предварительная версия для .NET 8 в ноябре 2023 года

Исправление — 2 ноября 2026 г.: приведённые выше шаги используют Aspire CLI 13.x. Снимки экрана, параметр Redis и API AddRedisContainer ниже относятся к предварительной версии 2023 года. Её AppHost был нацелен на net8.0 и ссылался на Aspire.Hosting 8.0.0-preview.1.23557.2.

В Visual Studio 2022 Preview в первоначальном руководстве выбирали .NET Aspire Starter Application и включали Use Redis for caching. В CLI этому соответствовала команда:

dotnet new aspire-starter --use-redis-cache --output Foo

Диалог создания нового проекта Visual Studio с отфильтрованным списком шаблонов проектов .NET Aspire.

Диалог дополнительной информации для шаблона проекта .NET Aspire Starter Application с опциональной настройкой Use Redis for caching (требуется Docker).

AppHost ссылался на ApiService и Web. Оба проекта использовали ServiceDefaults, что видно на исходной схеме зависимостей:

Граф зависимостей проектов для .NET Aspire Starter Application: AppHost наверху, зависит от ApiService и Web, оба зависят от ServiceDefaults.

В предварительной версии AppHost регистрировал Redis под именем cache, а API под именем apiservice. Фронтенд ссылался на оба ресурса. Так выглядел API того времени:

var builder = DistributedApplication.CreateBuilder(args);
var cache = builder.AddRedisContainer("cache");
var api = builder.AddProject<Projects.Foo_ApiService>("apiservice");
builder.AddProject<Projects.Foo_Web>("webfrontend")
    .WithReference(cache)
    .WithReference(api);
builder.Build().Run();

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

Панель .NET Aspire, выполняющая шаблон проекта .NET Aspire Starter Application.

Трассировка запроса внутри панели .NET Aspire, показывающая запрос на этапах его прохождения через различные компоненты приложения.

Comments

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