Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
.NET .NET Aspire предоставляет средства, шаблоны и пакеты для создания наблюдаемых, готовых к работе приложений. Доставка через пакеты .NET.NET Aspire NuGet упрощает распространенные проблемы в разработке современных приложений. Сегодняшние приложения часто используют несколько служб, таких как базы данных, обмен сообщениями и кэширование, многие из которых поддерживаются.NET.NET Aspire интеграцией. Сведения о официальной поддержке см. в политике.NET.NET Aspire поддержки.
Почему .NET.NET Aspire?
.NET .NET Aspire улучшает возможности создания приложений с различными проектами и ресурсами. Благодаря усовершенствованиям производительности во время разработки, которые эмулируют развернутые сценарии, можно быстро разрабатывать взаимосвязанные приложения. Разработанная для гибкости, .NET.NET Aspire позволяет заменять или расширять части вашими предпочитаемыми инструментами и рабочими процессами. К ключевым функциям относятся:
- Dev-Time управления: .NET.NET Aspire предоставляет функции для запуска и подключения многопроектных приложений, контейнерных ресурсов и других зависимостей в локальных средах разработки.
- интеграции: .NET Aspire интеграции — это пакеты NuGet для часто используемых служб, таких как Redis или Postgres, со стандартизированными интерфейсами, обеспечивающими согласованное и простое подключение к приложению.
- Инструменты: .NET Aspire поставляются с шаблонами проектов и возможностями использования инструментов для Visual Studio, Visual Studio Code, и интерфейса командной строки .NET для помощи в создании и взаимодействии с проектами .NET.NET Aspire.
Оркестрация в период разработки
В .NET.NET Aspire"оркестрация" в основном сосредоточена на улучшении пользовательского опыта локальной разработки методом упрощения управления конфигурацией и межсвязей приложения. Важно отметить, что оркестрация .NET.NET Aspireне предназначена для замены надежных систем, используемых в производственных средах, таких как Kubernetes. Вместо этого это набор абстракций, которые упрощают настройку обнаружения служб, переменных среды и конфигураций контейнеров, устраняя необходимость работы с низкоуровневыми сведениями о реализации. При использовании .NET.NET Aspireкод имеет согласованный интерфейс начальной загрузки на любом компьютере разработки без необходимости выполнять сложные действия вручную, что упрощает управление на этапе разработки.
.NET .NET Aspire оркестрация содействует в решении следующих проблем:
- состав приложения. Укажите проекты .NET, контейнеры, исполняемые файлы и облачные ресурсы, составляющие приложение.
- обнаружение служб и управление строками подключения. Хост приложения внедряет правильные строки подключения, сетевые конфигурации и информацию об обнаружении служб, чтобы упростить работу разработчика.
Например, с помощью .NET Aspireследующий код создает локальный ресурс контейнера Redis, ожидает, пока он станет доступным, а затем настраивает соответствующую строку подключения в проекте "frontend"
с несколькими вспомогательными вызовами метода:
// Create a distributed application builder given the command line arguments.
var builder = DistributedApplication.CreateBuilder(args);
// Add a Redis server to the application.
var cache = builder.AddRedis("cache");
// Add the frontend project to the application and configure it to use the
// Redis server, defined as a referenced dependency.
builder.AddProject<Projects.MyFrontend>("frontend")
.WithReference(cache)
.WaitFor(cache);
Дополнительные сведения см. в обзоре оркестрации .NET.NET Aspire.
Важный
Вызов AddRedis создает новый контейнер Redis в локальной среде разработки. Если вы предпочитаете использовать существующий экземпляр Redis, можно использовать метод AddConnectionString для ссылки на существующую строку подключения. Дополнительные сведения см. в статье Справочник по существующим ресурсам.
интеграции .NET.NET Aspire
.NET .NET Aspire интеграции — это пакеты NuGet, предназначенные для упрощения подключений к популярным службам и платформам, например Redis или PostgreSQL. .NET .NET Aspire интеграции управляют настройкой и взаимодействием облачных ресурсов с помощью стандартизированных шаблонов, таких как добавление проверок работоспособности и телеметрии. Интеграции являются двухходовыми: интеграции типа «размещение» представляют собой сервис, к которому вы подключаетесь, а интеграции типа «клиент» представляют клиента или потребителя этого сервиса. Другими словами, для многих пакетов хостинга существует соответствующий клиентский пакет, который обрабатывает подключение к службе внутри вашего кода.
Каждая интеграция предназначена для работы с хостом приложения .NET.NET Aspire, а их конфигурации автоматически внедряются путем ссылки на именованные ресурсы. Другими словами, если Example.ServiceFoo ссылается на Example.ServiceBar, Example.ServiceFoo наследует необходимые конфигурации интеграции, чтобы разрешить им взаимодействовать друг с другом автоматически.
Например, рассмотрим следующий код, используя интеграцию Service Bus .NET.NET Aspire:
builder.AddAzureServiceBusClient("servicebus");
Метод AddAzureServiceBusClient обрабатывает следующие проблемы:
- Регистрирует ServiceBusClient в качестве одиночки в контейнере DI для подключения к Azure Service Bus.
- Применяет конфигурации ServiceBusClient либо непосредственно через код, либо через конфигурацию.
- Включает соответствующие проверки работоспособности, логирование и телеметрию, относящиеся к использованию Azure Service Bus.
Полный список доступных интеграции подробно описан на странице обзора интеграции .NET.NET Aspire.
Шаблоны проектов и инструменты разработки
.NET Aspire предоставляет набор шаблонов проектов и инструментов для Visual Studio, Visual Studio Codeи .NET CLI. Эти шаблоны предназначены для создания и взаимодействия с проектами .NET Aspire или добавления .NET Aspire в существующую базу кода. Шаблоны включают набор рекомендуемых по умолчанию настроек, которые помогут вам быстро приступить к работе. Например, он имеет стандартный код для включения проверок состояния системы и логирования в .NET приложениях. Эти значения по умолчанию полностью настраиваются, поэтому их можно изменить и адаптировать в соответствии с вашими потребностями.
.NET .NET Aspire шаблоны также включают стандартные методы расширения, которые обрабатывают конфигурации общих служб для вас:
builder.AddServiceDefaults();
Дополнительные сведения о том, что делает AddServiceDefaults
, см. в .NET.NET Aspire параметрах службы по умолчанию.
При добавлении в файл Program.cs указанный выше код обрабатывает следующие проблемы:
- OpenTelemetry. Настраивает форматированное ведение журнала, метрики среды выполнения, встроенные счетчики и трассировку для ASP.NET Core, gRPC и HTTP. Для получения дополнительной информации см. .NET.NET Aspireо телеметрии.
- стандартные проверки работоспособности: добавляет эндпоинты стандартной проверки работоспособности, которые могут запрашиваться инструментами для мониторинга вашего приложения. Дополнительные сведения см. в разделе проверки работоспособности приложений в C# .NET.
- Обнаружение служб: включает обнаружение служб для приложения и настраивает HttpClient соответствующим образом.
Дальнейшие действия
.NET Aspire