ワンクリックで
dotnet-aspire
// Build, upgrade, and operate .NET Aspire application hosts with current CLI, AppHost, ServiceDefaults, integrations, dashboard, testing, and Azure deployment patterns for distributed apps.
// Build, upgrade, and operate .NET Aspire application hosts with current CLI, AppHost, ServiceDefaults, integrations, dashboard, testing, and Azure deployment patterns for distributed apps.
Integrate ManagedCode.Orleans.Graph into an Orleans-based .NET application for graph-oriented relationships, edge management, and traversal logic on top of Orleans grains. Use when the application models graph structures in a distributed Orleans system.
Use ManagedCode.Orleans.SignalR when a distributed .NET application needs Orleans-based coordination of SignalR real-time messaging, hub delivery, and grain-driven push flows.
Build or review distributed .NET applications with Orleans grains, silos, persistence, streaming, reminders, placement, transactions, serialization, event sourcing, testing, and cloud-native hosting.
Implement or review SignalR hubs, streaming, reconnection, transport, and real-time delivery patterns in ASP.NET Core applications.
Build long-running .NET background services with `BackgroundService`, Generic Host, graceful shutdown, configuration, logging, and deployment patterns suited to workers and daemons.
| name | dotnet-aspire |
| description | Build, upgrade, and operate .NET Aspire application hosts with current CLI, AppHost, ServiceDefaults, integrations, dashboard, testing, and Azure deployment patterns for distributed apps. |
| compatibility | Best for current Aspire 13-era tooling on .NET 10; use version-aware upgrade guidance for older 8.x or 9.x Aspire solutions. |
Aspire.AppHost.Sdk, Aspire.Hosting.*, DistributedApplication.CreateBuilder, WithReference, WaitFor, AddProject, AddRedis, AddPostgres, aspire run, aspire init, aspire add, or aspire updateAspire.Hosting.Testing, DistributedApplicationTestingBuilder, or a test harness that mixes an Aspire AppHost with WebApplicationFactoryServiceDefaults, service discovery, OpenTelemetry, health checks, or the Aspire DashboardCommunityToolkit/AspireAspire.AppHost.Sdk, and closely coupled hosting or testing packages on the same patch line, then rerun the AppHost and deployment checks after aspire update.ServiceDefaults narrow. It exists for telemetry, health checks, resilience, and service discovery, not shared domain models or general utility code.CommunityToolkit/Aspire only when the capability gap is real: unsupported language hosts, extra dev infrastructure, or extension packages the official project does not provide.WithReference, the dashboard shows the expected resource graph, and end-to-end tests can exercise the topology.Aspire.Hosting.Testing to boot the distributed app, create HttpClient or SignalR clients from the AppHost, and layer WebApplicationFactory on top only when tests need direct Host DI, grains, or runtime services.flowchart LR
A["Distributed-app task"] --> B{"Need code-first orchestration?"}
B -->|No| C["Stay in service-level skills such as ASP.NET Core, Worker, or Orleans"]
B -->|Yes| D["Create or update the AppHost"]
D --> E["Model resources and services with `WithReference` and `WaitFor`"]
E --> F{"Official Aspire integration exists?"}
F -->|Yes| G["Use first-party Aspire integration"]
F -->|No or gap remains| H["Evaluate `CommunityToolkit/Aspire`"]
G --> I["Apply `ServiceDefaults`, dashboard, and tests"]
H --> I
I --> J{"Publishing now?"}
J -->|No| K["Run locally with `aspire run` or the AppHost project"]
J -->|Yes| L["Choose `azd`, App Service, or the CLI deploy/publish pipeline"]
Aspire.AppHost.Sdk/<version> or a file-based AppHost when that repo intentionally uses the single-file model. Recognize both as valid current patterns.aspire new for starter projects, aspire init to add Aspire support to an existing solution or create a single-file AppHost, aspire add to add integrations or starter pieces, aspire run for local orchestration, aspire deploy for the current CLI deploy pipeline, and aspire update for version-aware upgrades. aspire publish still exists for explicit artifact-generation flows and remains preview-sensitive.13.1.3 is a servicing release. Treat it as a patch-line refresh for the current CLI-first workflow, not a new topology model; align package versions, rerun aspire update, then revalidate local orchestration and the chosen deployment path.WithReference(...) for dependency and configuration flow, and WaitFor(...) for startup ordering. Use WithExternalHttpEndpoints() only when the resource truly needs an externally reachable endpoint for the chosen runtime or publish target.AddServiceDefaults() should stay focused on OpenTelemetry, health endpoints, service discovery, HttpClient resilience, and related cross-cutting infrastructure.DistributedApplicationTestingBuilder plus a shared fixture for AppHost lifecycle, App.CreateHttpClient(...) for resource-bound clients, and a WebApplicationFactory<TEntryPoint> wrapper only when the test must resolve DI services or in-process runtime state from the hosted app. For UI flows, initialize Playwright once in the shared fixture, create a fresh browser context per test, and capture failure artifacts..NET 10.CommunityToolkit/Aspire when you need polyglot app hosts beyond official coverage, extra dev-time tools around a resource, or community-maintained integrations such as SQLite, Java, Go, PowerShell, k6, MailPit, MinIO, or Meilisearch.WithReferenceServiceDefaults into a dumping ground for shared models or helpersCommunityToolkit/Aspire when first-party Aspire already covers the requirementCommunityToolkit/Aspire package decisionaspire run or the AppHost projectWithReference and WaitFor relationships where neededServiceDefaults contains only cross-cutting infrastructure concernsWebApplicationFactory layer reuses connection strings and endpoints from the AppHost instead of duplicating local configServiceDefaults, testing, and upgrade checkpointsDistributedApplicationTestingBuilder, WebApplicationFactory integration, Playwright bootstrapping, and diagnosticsCommunityToolkit/Aspire packages, capability gaps, and selection rules