# Aspire.Hosting

- Package: `Aspire.Hosting`
- Version: `13.2.0`
- Target framework: `net8.0`
- Source: [GitHub](https://github.com/microsoft/aspire/tree/aad16017893bd769e0634c47fb007f1454735f11/src/Aspire.Hosting)
- NuGet: [Aspire.Hosting](https://www.nuget.org/packages/Aspire.Hosting)

## Namespaces

### Aspire.Hosting

- [AspireDtoAttribute](/reference/api/csharp/aspire.hosting/aspiredtoattribute.md) -- `class` `sealed` -- Marks a class as an ATS (Aspire Type System) Data Transfer Object. DTOs are serializable types used to pass structured data to capabilities.
- [AspireExportAttribute](/reference/api/csharp/aspire.hosting/aspireexportattribute.md) -- `class` `sealed` -- Marks a method, type, or assembly-level type as an ATS (Aspire Type System) export.
- [AspireExportIgnoreAttribute](/reference/api/csharp/aspire.hosting/aspireexportignoreattribute.md) -- `class` `sealed` -- Excludes a property, method, or type from ATS export when the containing type uses [AspireExportAttribute.ExposeProperties](/reference/api/csharp/aspire.hosting/aspireexportattribute/properties.md#exposeproperties) or [AspireExportAttribute.ExposeMethods](/reference/api/csharp/aspire.hosting/aspireexportattribute/properties.md#exposemethods).
- [AspireUnionAttribute](/reference/api/csharp/aspire.hosting/aspireunionattribute.md) -- `class` `sealed` -- Specifies that a parameter or property accepts a union of multiple ATS types.
- [ConnectionPropertiesExtensions](/reference/api/csharp/aspire.hosting/connectionpropertiesextensions.md) -- `class` `static` -- Provides extension methods for adding connection properties to resources.
- [ConnectionStringBuilderExtensions](/reference/api/csharp/aspire.hosting/connectionstringbuilderextensions.md) -- `class` `static` -- Provides extension methods for adding connection string resources to an application.
- [ConnectionStringResource](/reference/api/csharp/aspire.hosting/connectionstringresource.md) -- `class` `sealed` -- Adds a connection string to the distributed application a resource with the specified expression.
- [ContainerRegistryResourceBuilderExtensions](/reference/api/csharp/aspire.hosting/containerregistryresourcebuilderextensions.md) -- `class` `static` -- Provides extension methods for adding container registry resources to the distributed application.
- [ContainerResourceBuilderExtensions](/reference/api/csharp/aspire.hosting/containerresourcebuilderextensions.md) -- `class` `static` -- Provides extension methods for [IDistributedApplicationBuilder](/reference/api/csharp/aspire.hosting/idistributedapplicationbuilder.md) to add container resources to the application.
- [ContainerResourceExtensions](/reference/api/csharp/aspire.hosting/containerresourceextensions.md) -- `class` `static` -- Provides extension methods for working with container resources in a distributed application model.
- [CustomResourceExtensions](/reference/api/csharp/aspire.hosting/customresourceextensions.md) -- `class` `static` -- Extension methods for applying dashboard annotations to resources.
- [DistributedApplication](/reference/api/csharp/aspire.hosting/distributedapplication.md) -- `class` `ats export` -- Represents a distributed application that implements the `Hosting.IHost` and `IAsyncDisposable` interfaces.
- [DistributedApplicationBuilder](/reference/api/csharp/aspire.hosting/distributedapplicationbuilder.md) -- `class` -- A builder for creating instances of [DistributedApplication](/reference/api/csharp/aspire.hosting/distributedapplication.md).
- [DistributedApplicationBuilderExtensions](/reference/api/csharp/aspire.hosting/distributedapplicationbuilderextensions.md) -- `class` `static` -- Extensions for [IDistributedApplicationBuilder](/reference/api/csharp/aspire.hosting/idistributedapplicationbuilder.md).
- [DistributedApplicationEventingExtensions](/reference/api/csharp/aspire.hosting/distributedapplicationeventingextensions.md) -- `class` `static` -- Provides extension methods for subscribing to [IDistributedApplicationResourceEvent](/reference/api/csharp/aspire.hosting/idistributedapplicationresourceevent.md) events on resources.
- [DistributedApplicationException](/reference/api/csharp/aspire.hosting/distributedapplicationexception.md) -- `class` -- Represents an exception that is thrown when a distributed application error occurs.
- [DistributedApplicationExecutionContext](/reference/api/csharp/aspire.hosting/distributedapplicationexecutioncontext.md) -- `class` `ats export` -- Exposes the global contextual information for this invocation of the AppHost.
- [DistributedApplicationExecutionContextOptions](/reference/api/csharp/aspire.hosting/distributedapplicationexecutioncontextoptions.md) -- `class` `ats export` -- Configuration options and references that need to be exposed to the [DistributedApplicationExecutionContext](/reference/api/csharp/aspire.hosting/distributedapplicationexecutioncontext.md).
- [DistributedApplicationOperation](/reference/api/csharp/aspire.hosting/distributedapplicationoperation.md) -- `enum` -- Describes the context in which the AppHost is being executed.
- [DistributedApplicationOptions](/reference/api/csharp/aspire.hosting/distributedapplicationoptions.md) -- `class` `sealed` -- Options for configuring the behavior of [DistributedApplication.CreateBuilder(DistributedApplicationOptions)](/reference/api/csharp/aspire.hosting/distributedapplication/methods.md#createbuilder-distributedapplicationoptions).
- [DotnetToolResourceExtensions](/reference/api/csharp/aspire.hosting/dotnettoolresourceextensions.md) -- `class` `static` -- Provides extension methods for adding Dotnet Tool resources to the application model.
- [EmulatorResourceExtensions](/reference/api/csharp/aspire.hosting/emulatorresourceextensions.md) -- `class` `static` -- Extension methods for managing emulator resources.
- [ExecutableResourceBuilderExtensions](/reference/api/csharp/aspire.hosting/executableresourcebuilderextensions.md) -- `class` `static` -- Provides extension methods for adding executable resources to the [IDistributedApplicationBuilder](/reference/api/csharp/aspire.hosting/idistributedapplicationbuilder.md) application model.
- [ExecutableResourceExtensions](/reference/api/csharp/aspire.hosting/executableresourceextensions.md) -- `class` `static` -- Provides extension methods for working with [ExecutableResource](/reference/api/csharp/aspire.hosting/executableresource.md) objects.
- [ExternalServiceBuilderExtensions](/reference/api/csharp/aspire.hosting/externalservicebuilderextensions.md) -- `class` `static` -- Provides extension methods for adding external services to an application.
- [ExternalServiceResource](/reference/api/csharp/aspire.hosting/externalserviceresource.md) -- `class` `sealed` -- Represents an external service resource with service discovery capabilities.
- [IDeveloperCertificateService](/reference/api/csharp/aspire.hosting/idevelopercertificateservice.md) -- `interface` -- Service that provides information about developer certificate trust capabilities.
- [IDistributedApplicationBuilder](/reference/api/csharp/aspire.hosting/idistributedapplicationbuilder.md) -- `interface` `ats export` -- A builder for creating instances of [DistributedApplication](/reference/api/csharp/aspire.hosting/distributedapplication.md).
- [IFileSystemService](/reference/api/csharp/aspire.hosting/ifilesystemservice.md) -- `interface` -- Service for managing Aspire directories.
- [IInteractionService](/reference/api/csharp/aspire.hosting/iinteractionservice.md) -- `interface` -- A service to interact with the current development environment.
- [InputLoadOptions](/reference/api/csharp/aspire.hosting/inputloadoptions.md) -- `class` `sealed` -- Represents configuration options for dynamically loading input data.
- [InputsDialogInteractionOptions](/reference/api/csharp/aspire.hosting/inputsdialoginteractionoptions.md) -- `class` -- Options for configuring an inputs dialog interaction.
- [InputsDialogValidationContext](/reference/api/csharp/aspire.hosting/inputsdialogvalidationcontext.md) -- `class` `sealed` -- Represents the context for validating inputs in an inputs dialog interaction.
- [InputType](/reference/api/csharp/aspire.hosting/inputtype.md) -- `enum` -- Specifies the type of input for an [InteractionInput](/reference/api/csharp/aspire.hosting/interactioninput.md).
- [InteractionInput](/reference/api/csharp/aspire.hosting/interactioninput.md) -- `class` `sealed` -- Represents an input for an interaction.
- [InteractionInputCollection](/reference/api/csharp/aspire.hosting/interactioninputcollection.md) -- `class` `sealed` -- A collection of interaction inputs that supports both indexed and name-based access.
- [InteractionOptions](/reference/api/csharp/aspire.hosting/interactionoptions.md) -- `class` -- Optional configuration for interactions added with `Hosting.InteractionService`.
- [InteractionResult](/reference/api/csharp/aspire.hosting/interactionresult.md) -- `class` `static` -- Provides a set of static methods for the `Hosting.InteractionResult`1`.
- [InteractionResult<T>](/reference/api/csharp/aspire.hosting/interactionresult-1.md) -- `class` -- Represents the result of an interaction.
- [IProjectMetadata](/reference/api/csharp/aspire.hosting/iprojectmetadata.md) -- `interface` -- Represents metadata about a project resource.
- [IResourceWithContainerFiles](/reference/api/csharp/aspire.hosting/iresourcewithcontainerfiles.md) -- `interface` -- Represents a resource that contains files that can be copied to other resources.
- [IResourceWithServiceDiscovery](/reference/api/csharp/aspire.hosting/iresourcewithservicediscovery.md) -- `interface` -- A resource that supports exporting service discovery information.
- [ITempFileSystemService](/reference/api/csharp/aspire.hosting/itempfilesystemservice.md) -- `interface` -- Service for managing temporary directories and files within Aspire.
- [IUserSecretsManager](/reference/api/csharp/aspire.hosting/iusersecretsmanager.md) -- `interface` `ats export` -- Defines an interface for managing user secrets with support for read and write operations.
- [LaunchProfile](/reference/api/csharp/aspire.hosting/launchprofile.md) -- `class` `sealed` -- Represents a launch profile for a [ProjectResource](/reference/api/csharp/aspire.hosting/projectresource.md).
- [LaunchSettings](/reference/api/csharp/aspire.hosting/launchsettings.md) -- `class` `sealed` -- Represents the launch settings for a [ProjectResource](/reference/api/csharp/aspire.hosting/projectresource.md).
- [LoadInputContext](/reference/api/csharp/aspire.hosting/loadinputcontext.md) -- `class` `sealed` -- The context for dynamic input loading. Used with [InputLoadOptions.LoadCallback](/reference/api/csharp/aspire.hosting/inputloadoptions/properties.md#loadcallback).
- [McpServerResourceBuilderExtensions](/reference/api/csharp/aspire.hosting/mcpserverresourcebuilderextensions.md) -- `class` `static` -- Provides extension methods for configuring MCP (Model Context Protocol) server endpoints on resources.
- [MessageBoxInteractionOptions](/reference/api/csharp/aspire.hosting/messageboxinteractionoptions.md) -- `class` -- Options for configuring a message box interaction.
- [MessageIntent](/reference/api/csharp/aspire.hosting/messageintent.md) -- `enum` -- Specifies the intent or purpose of a message in an interaction.
- [MissingParameterValueException](/reference/api/csharp/aspire.hosting/missingparametervalueexception.md) -- `class` -- The exception that is thrown when a parameter resource cannot be initialized because its value is missing or cannot be resolved.
- [NotificationInteractionOptions](/reference/api/csharp/aspire.hosting/notificationinteractionoptions.md) -- `class` -- Options for configuring a notification interaction.
- [OtlpConfigurationExtensions](/reference/api/csharp/aspire.hosting/otlpconfigurationextensions.md) -- `class` `static` -- Provides extension methods for configuring OpenTelemetry in projects using environment variables.
- [OtlpProtocol](/reference/api/csharp/aspire.hosting/otlpprotocol.md) -- `enum` -- Protocols available for OTLP exporters.
- [ParameterProcessor](/reference/api/csharp/aspire.hosting/parameterprocessor.md) -- `class` `sealed` -- Handles processing of parameter resources during application orchestration.
- [ParameterResourceBuilderExtensions](/reference/api/csharp/aspire.hosting/parameterresourcebuilderextensions.md) -- `class` `static` -- Provides extension methods for adding parameter resources to an application.
- [ProjectResourceBuilderExtensions](/reference/api/csharp/aspire.hosting/projectresourcebuilderextensions.md) -- `class` `static` -- Provides extension methods for [IDistributedApplicationBuilder](/reference/api/csharp/aspire.hosting/idistributedapplicationbuilder.md) to add and configure project resources.
- [ProjectResourceOptions](/reference/api/csharp/aspire.hosting/projectresourceoptions.md) -- `class` `ats export` -- Various properties to modify the behavior of the project resource.
- [RequiredCommandResourceExtensions](/reference/api/csharp/aspire.hosting/requiredcommandresourceextensions.md) -- `class` `static` -- Provides extension methods for adding required command annotations to resources.
- [ResourceBuilderExtensions](/reference/api/csharp/aspire.hosting/resourcebuilderextensions.md) -- `class` `static` -- Provides extension methods for configuring resources with environment variables.
- [TempDirectory](/reference/api/csharp/aspire.hosting/tempdirectory.md) -- `class` `abstract` -- Represents a temporary directory that will be deleted when disposed.
- [TempFile](/reference/api/csharp/aspire.hosting/tempfile.md) -- `class` `abstract` -- Represents a temporary file that will be deleted when disposed.
- [VolumeNameGenerator](/reference/api/csharp/aspire.hosting/volumenamegenerator.md) -- `class` `static` -- Utility class for generating volume names.

### Aspire.Hosting.ApplicationModel

- [AfterEndpointsAllocatedEvent](/reference/api/csharp/aspire.hosting/afterendpointsallocatedevent.md) -- `class` `obsolete` -- This event is published after all endpoints have been allocated.
- [AfterResourcesCreatedEvent](/reference/api/csharp/aspire.hosting/afterresourcescreatedevent.md) -- `class` `ats export` -- This event is published after all resources have been created.
- [AllocatedEndpoint](/reference/api/csharp/aspire.hosting/allocatedendpoint.md) -- `class` -- Represents an endpoint allocated for a service instance.
- [AspireStoreExtensions](/reference/api/csharp/aspire.hosting/aspirestoreextensions.md) -- `class` `static` -- Provides extension methods for [IDistributedApplicationBuilder](/reference/api/csharp/aspire.hosting/idistributedapplicationbuilder.md) to create an [IAspireStore](/reference/api/csharp/aspire.hosting/iaspirestore.md) instance.
- [BeforeResourceStartedEvent](/reference/api/csharp/aspire.hosting/beforeresourcestartedevent.md) -- `class` `ats export` -- This event is raised by orchestrators before they have started a new resource.
- [BeforeStartEvent](/reference/api/csharp/aspire.hosting/beforestartevent.md) -- `class` `ats export` -- This event is published before the application starts.
- [CertificateAuthorityCollection](/reference/api/csharp/aspire.hosting/certificateauthoritycollection.md) -- `class` -- Represents a collection of certificate authorities within the application model.
- [CertificateAuthorityCollectionAnnotation](/reference/api/csharp/aspire.hosting/certificateauthoritycollectionannotation.md) -- `class` `sealed` -- An annotation that indicates a resource is referencing a certificate authority collection.
- [CertificateAuthorityCollectionResourceExtensions](/reference/api/csharp/aspire.hosting/certificateauthoritycollectionresourceextensions.md) -- `class` `static` -- Provides extension methods for [CertificateAuthorityCollection](/reference/api/csharp/aspire.hosting/certificateauthoritycollection.md).
- [CertificateTrustConfigurationCallbackAnnotation](/reference/api/csharp/aspire.hosting/certificatetrustconfigurationcallbackannotation.md) -- `class` `sealed` -- An annotation that indicates a resource wants to manage how custom certificate trust is configured.
- [CertificateTrustConfigurationCallbackAnnotationContext](/reference/api/csharp/aspire.hosting/certificatetrustconfigurationcallbackannotationcontext.md) -- `class` `sealed` -- Context provided to a [CertificateTrustConfigurationCallbackAnnotation](/reference/api/csharp/aspire.hosting/certificatetrustconfigurationcallbackannotation.md) callback.
- [CertificateTrustExecutionConfigurationContext](/reference/api/csharp/aspire.hosting/certificatetrustexecutionconfigurationcontext.md) -- `class` -- Context for configuring certificate trust configuration properties.
- [CertificateTrustExecutionConfigurationData](/reference/api/csharp/aspire.hosting/certificatetrustexecutionconfigurationdata.md) -- `class` -- Metadata about the resource certificate trust configuration.
- [CertificateTrustScope](/reference/api/csharp/aspire.hosting/certificatetrustscope.md) -- `enum` -- Defines the scope of custom certificate authorities for a resource. The default scope for most resources is [CertificateTrustScope.Append](/reference/api/csharp/aspire.hosting/certificatetrustscope/fields.md), but some resources may choose to override this default behavior.
- [CommandLineArgsCallbackAnnotation](/reference/api/csharp/aspire.hosting/commandlineargscallbackannotation.md) -- `class` -- Represents an annotation that provides a callback to be executed with a list of command-line arguments when an executable resource is started.
- [CommandLineArgsCallbackContext](/reference/api/csharp/aspire.hosting/commandlineargscallbackcontext.md) -- `class` `sealed` `ats export` -- Represents a callback context for the list of command-line arguments associated with an executable resource.
- [CommandOptions](/reference/api/csharp/aspire.hosting/commandoptions.md) -- `class` `ats dto` -- Optional configuration for resource commands added with [ResourceBuilderExtensions.WithCommand(IResourceBuilder<T>, string, string, Func<ExecuteCommandContext, Task<ExecuteCommandResult>>, CommandOptions?)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#withcommand-iresourcebuilder-t-string-string-func-executecommandcontext-task-executecommandresult-commandoptions).
- [CommandResults](/reference/api/csharp/aspire.hosting/commandresults.md) -- `class` `static` -- A factory for [ExecuteCommandResult](/reference/api/csharp/aspire.hosting/executecommandresult.md).
- [ConnectionPropertyAnnotation](/reference/api/csharp/aspire.hosting/connectionpropertyannotation.md) -- `class` `sealed` -- Annotation that creates a custom connection property value injected into environment variables when a resource is referenced using `WithReference()`.
- [ConnectionStringAvailableEvent](/reference/api/csharp/aspire.hosting/connectionstringavailableevent.md) -- `class` `ats export` -- The [ConnectionStringAvailableEvent](/reference/api/csharp/aspire.hosting/connectionstringavailableevent.md) is raised when a connection string becomes available for a resource.
- [ConnectionStringRedirectAnnotation](/reference/api/csharp/aspire.hosting/connectionstringredirectannotation.md) -- `class` -- Links to a resource that implements [IResourceWithConnectionString](/reference/api/csharp/aspire.hosting/iresourcewithconnectionstring.md) that can be used by the containing resource to acquire a connection string.
- [ConnectionStringReference](/reference/api/csharp/aspire.hosting/connectionstringreference.md) -- `class` -- Represents a reference to a connection string.
- [ContainerBuildOptionsCallbackAnnotation](/reference/api/csharp/aspire.hosting/containerbuildoptionscallbackannotation.md) -- `class` `sealed` -- Annotation that provides a callback to configure container build options for a resource.
- [ContainerBuildOptionsCallbackContext](/reference/api/csharp/aspire.hosting/containerbuildoptionscallbackcontext.md) -- `class` `sealed` -- Context for configuring container build options via a callback.
- [ContainerCertificatePathsAnnotation](/reference/api/csharp/aspire.hosting/containercertificatepathsannotation.md) -- `class` `sealed` -- An annotation that allows overriding default certificate paths for container resources.
- [ContainerDirectory](/reference/api/csharp/aspire.hosting/containerdirectory.md) -- `class` `sealed` -- Represents a directory in the container file system.
- [ContainerFile](/reference/api/csharp/aspire.hosting/containerfile.md) -- `class` `sealed` -- Represents a standard file in the container file system.
- [ContainerFileBase](/reference/api/csharp/aspire.hosting/containerfilebase.md) -- `class` `abstract` -- Base class for files in the container file system (as compared to directories).
- [ContainerFilesDestinationAnnotation](/reference/api/csharp/aspire.hosting/containerfilesdestinationannotation.md) -- `class` `sealed` -- Represents an annotation that specifies a source resource and destination path for copying container files.
- [ContainerFilesSourceAnnotation](/reference/api/csharp/aspire.hosting/containerfilessourceannotation.md) -- `class` `sealed` -- Represents an annotation that associates a container file/directory with a resource.
- [ContainerFileSystemCallbackAnnotation](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackannotation.md) -- `class` `sealed` -- Represents a callback annotation that specifies files and folders that should be created or updated in a container.
- [ContainerFileSystemCallbackContext](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackcontext.md) -- `class` `sealed` -- Represents the context for a [ContainerFileSystemCallbackAnnotation](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackannotation.md) callback.
- [ContainerFileSystemCallbackHttpsCertificateContext](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackhttpscertificatecontext.md) -- `class` `sealed` -- Represents the context for server authentication certificate files in a [ContainerFileSystemCallbackContext](/reference/api/csharp/aspire.hosting/containerfilesystemcallbackcontext.md).
- [ContainerFileSystemItem](/reference/api/csharp/aspire.hosting/containerfilesystemitem.md) -- `class` `abstract` -- Represents a base class for file system entries in a container.
- [ContainerImageAnnotation](/reference/api/csharp/aspire.hosting/containerimageannotation.md) -- `class` `sealed` -- Represents an annotation for a container image.
- [ContainerImagePullPolicyAnnotation](/reference/api/csharp/aspire.hosting/containerimagepullpolicyannotation.md) -- `class` `sealed` -- Annotation that controls the image pull policy for a container resource.
- [ContainerImagePushOptions](/reference/api/csharp/aspire.hosting/containerimagepushoptions.md) -- `class` `sealed` -- Represents options for pushing container images to a registry.
- [ContainerImagePushOptionsCallbackAnnotation](/reference/api/csharp/aspire.hosting/containerimagepushoptionscallbackannotation.md) -- `class` `sealed` -- Represents an annotation that configures container image push options via a callback function.
- [ContainerImagePushOptionsCallbackContext](/reference/api/csharp/aspire.hosting/containerimagepushoptionscallbackcontext.md) -- `class` `sealed` -- Provides context information for container image push options callbacks.
- [ContainerImageReference](/reference/api/csharp/aspire.hosting/containerimagereference.md) -- `class` -- Represents the fully‑qualified container image reference that should be deployed.
- [ContainerLifetime](/reference/api/csharp/aspire.hosting/containerlifetime.md) -- `enum` -- Lifetime modes for container resources.
- [ContainerLifetimeAnnotation](/reference/api/csharp/aspire.hosting/containerlifetimeannotation.md) -- `class` `sealed` -- Annotation that controls the lifetime of a container resource.
- [ContainerMountAnnotation](/reference/api/csharp/aspire.hosting/containermountannotation.md) -- `class` `sealed` -- Represents a mount annotation for a container resource.
- [ContainerMountType](/reference/api/csharp/aspire.hosting/containermounttype.md) -- `enum` -- Represents the type of a container mount.
- [ContainerNameAnnotation](/reference/api/csharp/aspire.hosting/containernameannotation.md) -- `class` `sealed` -- Represents an annotation for a custom container name.
- [ContainerNetworkAliasAnnotation](/reference/api/csharp/aspire.hosting/containernetworkaliasannotation.md) -- `class` `sealed` -- Represents an annotation for a custom network alias for a container resource.
- [ContainerOpenSSLCertificateFile](/reference/api/csharp/aspire.hosting/containeropensslcertificatefile.md) -- `class` `sealed` -- Represents an OpenSSL public certificate in the container file system. Must be PEM encoded. An OpenSSL compatible symlink pointing to the destination file will be created in the same container folder as the certificate file named [subject hash].[n], where [n] is a sequence number that increases for each certificate in a target folder with the same subject hash.
- [ContainerPortReference](/reference/api/csharp/aspire.hosting/containerportreference.md) -- `class` -- Represents a TCP/UDP port that a container can expose.
- [ContainerRegistryReferenceAnnotation](/reference/api/csharp/aspire.hosting/containerregistryreferenceannotation.md) -- `class` -- Annotation that indicates a resource is using a specific container registry.
- [ContainerRegistryResource](/reference/api/csharp/aspire.hosting/containerregistryresource.md) -- `class` -- Represents a general-purpose container registry resource that can be used to reference external container registries (e.g., Docker Hub, GitHub Container Registry, or private registries) in the application model.
- [ContainerResource](/reference/api/csharp/aspire.hosting/containerresource.md) -- `class` -- A resource that represents a specified container.
- [ContainerRuntimeArgsCallbackAnnotation](/reference/api/csharp/aspire.hosting/containerruntimeargscallbackannotation.md) -- `class` `sealed` -- Represents an additional argument to pass to the container runtime run command.
- [ContainerRuntimeArgsCallbackContext](/reference/api/csharp/aspire.hosting/containerruntimeargscallbackcontext.md) -- `class` `sealed` -- Represents a callback context for the list of command-line arguments to be passed to the container runtime run command.
- [CSharpAppResource](/reference/api/csharp/aspire.hosting/csharpappresource.md) -- `class` -- A resource that represents a specified C# project or file-based app.
- [CustomResourceKnownProperties](/reference/api/csharp/aspire.hosting/customresourceknownproperties.md) -- `class` `static` -- Known properties for resources that show up in the dashboard.
- [CustomResourceSnapshot](/reference/api/csharp/aspire.hosting/customresourcesnapshot.md) -- `record` `sealed` -- An immutable snapshot of the state of a resource.
- [DefaultLaunchProfileAnnotation](/reference/api/csharp/aspire.hosting/defaultlaunchprofileannotation.md) -- `class` `sealed` -- An annotation that specifies the default launch profile for a resource.
- [DeploymentTargetAnnotation](/reference/api/csharp/aspire.hosting/deploymenttargetannotation.md) -- `class` `sealed` -- Represents an annotation for a deployment target.
- [DisableForwardedHeadersAnnotation](/reference/api/csharp/aspire.hosting/disableforwardedheadersannotation.md) -- `class` `sealed` -- Represents an annotation that disables enabling forwarded headers on ASP.NET Core projects on publish.
- [DistributedApplicationModel](/reference/api/csharp/aspire.hosting/distributedapplicationmodel.md) -- `class` `ats export` -- Represents a distributed application.
- [DistributedApplicationModelExtensions](/reference/api/csharp/aspire.hosting/distributedapplicationmodelextensions.md) -- `class` `static` -- Provides extension methods on the [DistributedApplicationModel](/reference/api/csharp/aspire.hosting/distributedapplicationmodel.md) class.
- [DockerBuildArg](/reference/api/csharp/aspire.hosting/dockerbuildarg.md) -- `class` `sealed` `obsolete` -- Represents a name/value pair, used to satisfy the `docker builder --build-arg <NAME>[=<VALUE>]` command switch. For more information, see [https://docs.docker.com/reference/cli/docker/image/build/#build-arg](https://docs.docker.com/reference/cli/docker/image/build/#build-arg).
- [DockerfileBaseImageAnnotation](/reference/api/csharp/aspire.hosting/dockerfilebaseimageannotation.md) -- `class` -- Represents an annotation for specifying custom base images in generated Dockerfiles.
- [DockerfileBuildAnnotation](/reference/api/csharp/aspire.hosting/dockerfilebuildannotation.md) -- `class` -- Represents an annotation for customizing a Dockerfile build.
- [DockerfileBuilderCallbackAnnotation](/reference/api/csharp/aspire.hosting/dockerfilebuildercallbackannotation.md) -- `class` -- Represents an annotation for providing callbacks to programmatically modify Dockerfile builds.
- [DockerfileBuilderCallbackContext](/reference/api/csharp/aspire.hosting/dockerfilebuildercallbackcontext.md) -- `class` -- Provides context information for Dockerfile build callbacks.
- [DockerfileFactoryContext](/reference/api/csharp/aspire.hosting/dockerfilefactorycontext.md) -- `class` `sealed` -- Provides context for Dockerfile factory functions.
- [DotnetToolAnnotation](/reference/api/csharp/aspire.hosting/dotnettoolannotation.md) -- `class` -- Represents an annotation for dotnet tool resources.
- [DotnetToolResource](/reference/api/csharp/aspire.hosting/dotnettoolresource.md) -- `class` -- A resource that represents a specified dotnet tool.
- [EmulatorResourceAnnotation](/reference/api/csharp/aspire.hosting/emulatorresourceannotation.md) -- `class` `sealed` -- Represents an annotation for an emulator resource that should be ignored by provisioners.
- [EndpointAnnotation](/reference/api/csharp/aspire.hosting/endpointannotation.md) -- `class` `sealed` -- Represents an endpoint annotation that describes how a service should be bound to a network.
- [EndpointBindingMode](/reference/api/csharp/aspire.hosting/endpointbindingmode.md) -- `enum` -- Specifies how an endpoint is bound to network addresses.
- [EndpointHostHelpers](/reference/api/csharp/aspire.hosting/endpointhosthelpers.md) -- `class` `static` -- Provides helper methods for validating localhost addresses.
- [EndpointNameAttribute](/reference/api/csharp/aspire.hosting/endpointnameattribute.md) -- `class` `sealed` -- Signifies that a parameter represents an endpoint name. Decorate `String` parameters representing endpoint names with this attribute, e.g.: ```csharp public static IResourceBuilder<TResource> WithCustomEndpoint<TResource>(this IResourceBuilder<TResource> builder, [EndpointName] string name) ```
- [EndpointProbeAnnotation](/reference/api/csharp/aspire.hosting/endpointprobeannotation.md) -- `class` `sealed` -- Represents an annotation that specifies the HTTP probes (health, readiness, liveness, etc.) of a resource.
- [EndpointProperty](/reference/api/csharp/aspire.hosting/endpointproperty.md) -- `enum` -- Represents the properties of an endpoint that can be referenced.
- [EndpointReference](/reference/api/csharp/aspire.hosting/endpointreference.md) -- `class` `sealed` `ats export` -- Represents an endpoint reference for a resource with endpoints.
- [EndpointReferenceExpression](/reference/api/csharp/aspire.hosting/endpointreferenceexpression.md) -- `class` `ats export` -- Represents a property expression for an endpoint reference.
- [EnvironmentCallbackAnnotation](/reference/api/csharp/aspire.hosting/environmentcallbackannotation.md) -- `class` -- Represents an annotation that provides a callback to modify the environment variables of an application.
- [EnvironmentCallbackContext](/reference/api/csharp/aspire.hosting/environmentcallbackcontext.md) -- `class` `ats export` -- Represents a callback context for environment variables associated with a publisher.
- [EnvironmentVariableSnapshot](/reference/api/csharp/aspire.hosting/environmentvariablesnapshot.md) -- `record` `sealed` -- A snapshot of an environment variable.
- [ExcludeLaunchProfileAnnotation](/reference/api/csharp/aspire.hosting/excludelaunchprofileannotation.md) -- `class` `sealed` -- Represents an annotation that indicates that launch settings should not be used.
- [ExecutableAnnotation](/reference/api/csharp/aspire.hosting/executableannotation.md) -- `class` `sealed` -- Represents an annotation for a container image.
- [ExecutableResource](/reference/api/csharp/aspire.hosting/executableresource.md) -- `class` -- A resource that represents a specified executable process.
- [ExecuteCommandContext](/reference/api/csharp/aspire.hosting/executecommandcontext.md) -- `class` `sealed` `ats export` -- Context for [ResourceCommandAnnotation.ExecuteCommand](/reference/api/csharp/aspire.hosting/resourcecommandannotation/properties.md#executecommand).
- [ExecuteCommandResult](/reference/api/csharp/aspire.hosting/executecommandresult.md) -- `class` `sealed` `ats dto` -- The result of executing a command. Returned from [ResourceCommandAnnotation.ExecuteCommand](/reference/api/csharp/aspire.hosting/resourcecommandannotation/properties.md#executecommand).
- [ExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/executionconfigurationbuilder.md) -- `class` `sealed` -- Provides a builder for constructing an [IExecutionConfigurationResult](/reference/api/csharp/aspire.hosting/iexecutionconfigurationresult.md) for a specific resource in the distributed application model. This resolves command line arguments and environment variables and potentially additional metadata through registered gatherers.
- [ExecutionConfigurationBuilderExtensions](/reference/api/csharp/aspire.hosting/executionconfigurationbuilderextensions.md) -- `class` `static` -- Provides extension methods for [IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md).
- [ExecutionConfigurationResultExtensions](/reference/api/csharp/aspire.hosting/executionconfigurationresultextensions.md) -- `class` `static` -- Extension methods for [IExecutionConfigurationResult](/reference/api/csharp/aspire.hosting/iexecutionconfigurationresult.md).
- [ExplicitStartupAnnotation](/reference/api/csharp/aspire.hosting/explicitstartupannotation.md) -- `class` `sealed` -- Represents an annotation for instructing the resource not to be started with the app host.
- [ExpressionInterpolatedStringHandler](/reference/api/csharp/aspire.hosting/expressioninterpolatedstringhandler.md) -- `struct` -- Represents a handler for interpolated strings that contain expressions. Those expressions will either be literal strings or instances of types that implement both [IValueProvider](/reference/api/csharp/aspire.hosting/ivalueprovider.md) and [IManifestExpressionProvider](/reference/api/csharp/aspire.hosting/imanifestexpressionprovider.md).
- [GenerateParameterDefault](/reference/api/csharp/aspire.hosting/generateparameterdefault.md) -- `class` `sealed` -- Represents that a default value should be generated.
- [HealthCheckAnnotation](/reference/api/csharp/aspire.hosting/healthcheckannotation.md) -- `class` -- An annotation which tracks the name of the health check used to detect to health of a resource.
- [HealthReportSnapshot](/reference/api/csharp/aspire.hosting/healthreportsnapshot.md) -- `record` `sealed` -- A report produced by a health check about a resource.
- [HostUrl](/reference/api/csharp/aspire.hosting/hosturl.md) -- `record` -- Represents a URL on the host machine. When referenced in a container resource, localhost will be replaced with the configured container host name.
- [HttpCommandOptions](/reference/api/csharp/aspire.hosting/httpcommandoptions.md) -- `class` -- Optional configuration for resource HTTP commands added with [ResourceBuilderExtensions.WithHttpCommand(IResourceBuilder<TResource>, string, string, string?, string?, HttpCommandOptions?)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#withhttpcommand-iresourcebuilder-tresource-string-string-string-string-httpcommandoptions)."/>
- [HttpCommandRequestContext](/reference/api/csharp/aspire.hosting/httpcommandrequestcontext.md) -- `class` `sealed` -- Context passed to callback to configure `Http.HttpRequestMessage` when using [ResourceBuilderExtensions.WithHttpCommand(IResourceBuilder<TResource>, string, string, string?, string?, HttpCommandOptions?)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#withhttpcommand-iresourcebuilder-tresource-string-string-string-string-httpcommandoptions) or [ResourceBuilderExtensions.WithHttpCommand(IResourceBuilder<TResource>, string, string, string?, string?, HttpCommandOptions?)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#withhttpcommand-iresourcebuilder-tresource-string-string-string-string-httpcommandoptions).
- [HttpCommandResultContext](/reference/api/csharp/aspire.hosting/httpcommandresultcontext.md) -- `class` `sealed` -- Context passed to callback to configure [ExecuteCommandResult](/reference/api/csharp/aspire.hosting/executecommandresult.md) when using [ResourceBuilderExtensions.WithHttpCommand(IResourceBuilder<TResource>, string, string, string?, string?, HttpCommandOptions?)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#withhttpcommand-iresourcebuilder-tresource-string-string-string-string-httpcommandoptions) or [ResourceBuilderExtensions.WithHttpCommand(IResourceBuilder<TResource>, string, string, string?, string?, HttpCommandOptions?)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#withhttpcommand-iresourcebuilder-tresource-string-string-string-string-httpcommandoptions).
- [HttpsCertificateAnnotation](/reference/api/csharp/aspire.hosting/httpscertificateannotation.md) -- `class` `sealed` -- An annotation that associates an HTTPS/TLS server certificate with a resource.
- [HttpsCertificateConfigurationCallbackAnnotation](/reference/api/csharp/aspire.hosting/httpscertificateconfigurationcallbackannotation.md) -- `class` `sealed` -- An annotation that indicates a resource wants to manage how it needs to be configured to use a specific TLS certificate pair.
- [HttpsCertificateConfigurationCallbackAnnotationContext](/reference/api/csharp/aspire.hosting/httpscertificateconfigurationcallbackannotationcontext.md) -- `class` `sealed` -- Context provided to a [HttpsCertificateConfigurationCallbackAnnotation](/reference/api/csharp/aspire.hosting/httpscertificateconfigurationcallbackannotation.md) callback.
- [HttpsCertificateExecutionConfigurationContext](/reference/api/csharp/aspire.hosting/httpscertificateexecutionconfigurationcontext.md) -- `class` -- Configuration context for server authentication certificate configuration.
- [HttpsCertificateExecutionConfigurationData](/reference/api/csharp/aspire.hosting/httpscertificateexecutionconfigurationdata.md) -- `class` -- Metadata for HTTPS/TLS server certificate configuration.
- [HttpsEndpointUpdateCallbackContext](/reference/api/csharp/aspire.hosting/httpsendpointupdatecallbackcontext.md) -- `class` `sealed` -- Context provided to the callback of [ResourceBuilderExtensions.SubscribeHttpsEndpointsUpdate(IResourceBuilder<TResource>, Action<HttpsEndpointUpdateCallbackContext>)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#subscribehttpsendpointsupdate-iresourcebuilder-tresource-action-httpsendpointupdatecallbackcontext) when an HTTPS certificate is determined to be available for the resource.
- [IAspireStore](/reference/api/csharp/aspire.hosting/iaspirestore.md) -- `interface` -- Represents a store for managing files in the Aspire hosting environment that can be reused across runs.
- [IComputeEnvironmentResource](/reference/api/csharp/aspire.hosting/icomputeenvironmentresource.md) -- `interface` -- Represents a compute environment resource.
- [IComputeResource](/reference/api/csharp/aspire.hosting/icomputeresource.md) -- `interface` -- Represents a compute resource.
- [IContainerFilesDestinationResource](/reference/api/csharp/aspire.hosting/icontainerfilesdestinationresource.md) -- `interface` -- Represents a resource that can consume and copy files from resources that implement [IResourceWithContainerFiles](/reference/api/csharp/aspire.hosting/iresourcewithcontainerfiles.md).
- [IContainerRegistry](/reference/api/csharp/aspire.hosting/icontainerregistry.md) -- `interface` -- Represents container registry information for deployment targets.
- [IconVariant](/reference/api/csharp/aspire.hosting/iconvariant.md) -- `enum` -- The icon variant.
- [IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md) -- `interface` -- Builder for gathering and resolving the execution configuration (arguments and environment variables) for a specific resource.
- [IExecutionConfigurationData](/reference/api/csharp/aspire.hosting/iexecutionconfigurationdata.md) -- `interface` -- Additional data associated with a resource's execution configuration. This allows gatherers to provide additional data required to properly configure or run the resource.
- [IExecutionConfigurationGatherer](/reference/api/csharp/aspire.hosting/iexecutionconfigurationgatherer.md) -- `interface` -- Gathers resource configurations (arguments and environment variables) and optionally applies additional metadata to the resource.
- [IExecutionConfigurationGathererContext](/reference/api/csharp/aspire.hosting/iexecutionconfigurationgatherercontext.md) -- `interface` -- Resource configuration gatherer context.
- [IExecutionConfigurationResult](/reference/api/csharp/aspire.hosting/iexecutionconfigurationresult.md) -- `interface` -- Configuration (arguments and environment variables) to apply to a specific resource.
- [ImagePullPolicy](/reference/api/csharp/aspire.hosting/imagepullpolicy.md) -- `enum` -- Image pull policies for container resources.
- [IManifestExpressionProvider](/reference/api/csharp/aspire.hosting/imanifestexpressionprovider.md) -- `interface` -- An interface that allows an object to express how it should be represented in a manifest.
- [IModelNameParameter](/reference/api/csharp/aspire.hosting/imodelnameparameter.md) -- `interface` -- Signifies that a parameter represents a model name.
- [InitializeResourceEvent](/reference/api/csharp/aspire.hosting/initializeresourceevent.md) -- `class` `ats export` -- This event is raised by orchestrators to signal to resources that they should initialize themselves.
- [InputGeneratorAnnotation](/reference/api/csharp/aspire.hosting/inputgeneratorannotation.md) -- `class` -- Annotation for customizing the input generation for a parameter.
- [IPortAllocator](/reference/api/csharp/aspire.hosting/iportallocator.md) -- `interface` -- Provides port allocation functionality for resources.
- [IRequiredCommandValidator](/reference/api/csharp/aspire.hosting/irequiredcommandvalidator.md) -- `interface` -- A service that validates required commands/executables are available on the local machine.
- [IResource](/reference/api/csharp/aspire.hosting/iresource.md) -- `interface` -- Represents a resource that can be hosted by an application.
- [IResourceAnnotation](/reference/api/csharp/aspire.hosting/iresourceannotation.md) -- `interface` -- Represents an annotation for a resource.
- [IResourceBuilder<T>](/reference/api/csharp/aspire.hosting/iresourcebuilder-1.md) -- `interface` -- Defines a builder for creating resources of type `T`.
- [IResourceCollection](/reference/api/csharp/aspire.hosting/iresourcecollection.md) -- `interface` -- Represents a collection of resources.
- [IResourceWithArgs](/reference/api/csharp/aspire.hosting/iresourcewithargs.md) -- `interface` -- Represents a resource that is associated with commandline arguments.
- [IResourceWithConnectionString](/reference/api/csharp/aspire.hosting/iresourcewithconnectionstring.md) -- `interface` -- Represents a resource that has a connection string associated with it.
- [IResourceWithCustomWithReference<TSelf>](/reference/api/csharp/aspire.hosting/iresourcewithcustomwithreference-1.md) -- `interface` -- Defines custom `WithReference` dispatch behavior for a resource type.
- [IResourceWithEndpoints](/reference/api/csharp/aspire.hosting/iresourcewithendpoints.md) -- `interface` -- Represents a resource that has endpoints associated with it.
- [IResourceWithEnvironment](/reference/api/csharp/aspire.hosting/iresourcewithenvironment.md) -- `interface` -- Represents a resource that is associated with an environment.
- [IResourceWithoutLifetime](/reference/api/csharp/aspire.hosting/iresourcewithoutlifetime.md) -- `interface` -- Represents a resource that does not have a lifetime. Reserved for resources that are just holders of data or references to other resources.
- [IResourceWithParameters](/reference/api/csharp/aspire.hosting/iresourcewithparameters.md) -- `interface` -- Represents a resource that has parameters.
- [IResourceWithParent](/reference/api/csharp/aspire.hosting/iresourcewithparent.md) -- `interface` -- Represents a resource that has a parent resource.
- [IResourceWithParent<T>](/reference/api/csharp/aspire.hosting/iresourcewithparent-1.md) -- `interface` -- Represents a resource that has a parent resource of type `T`.
- [IResourceWithProbes](/reference/api/csharp/aspire.hosting/iresourcewithprobes.md) -- `interface` -- Represents a resource that has probes associated with it.
- [IResourceWithWaitSupport](/reference/api/csharp/aspire.hosting/iresourcewithwaitsupport.md) -- `interface` -- Represents a resource that can wait for other resources to be running, health, and/or completed.
- [IValueProvider](/reference/api/csharp/aspire.hosting/ivalueprovider.md) -- `interface` -- An interface that allows the value to be provided for an environment variable.
- [IValueWithReferences](/reference/api/csharp/aspire.hosting/ivaluewithreferences.md) -- `interface` -- An interface that allows the value to list its references.
- [KnownHostNames](/reference/api/csharp/aspire.hosting/knownhostnames.md) -- `class` `static` -- Provides known host names for use within the Aspire application model API.
- [KnownNetworkIdentifiers](/reference/api/csharp/aspire.hosting/knownnetworkidentifiers.md) -- `class` `static` -- Provides known network identifiers for use within the Aspire application model API.
- [KnownResourceCommands](/reference/api/csharp/aspire.hosting/knownresourcecommands.md) -- `class` `static` -- Provides constants for well-known resource command names.
- [KnownResourceStates](/reference/api/csharp/aspire.hosting/knownresourcestates.md) -- `class` `static` -- The set of well known resource states.
- [KnownResourceStateStyles](/reference/api/csharp/aspire.hosting/knownresourcestatestyles.md) -- `class` `static` -- The set of well known resource states.
- [LaunchProfileAnnotation](/reference/api/csharp/aspire.hosting/launchprofileannotation.md) -- `class` `sealed` -- Represents an annotation that specifies the launch profile name for a resource.
- [LogLine](/reference/api/csharp/aspire.hosting/logline.md) -- `struct` `readonly` -- Represents a console log line.
- [LogSubscriber](/reference/api/csharp/aspire.hosting/logsubscriber.md) -- `struct` `readonly` -- Represents a log subscriber for a resource.
- [ManifestPublishingCallbackAnnotation](/reference/api/csharp/aspire.hosting/manifestpublishingcallbackannotation.md) -- `class` -- Represents an annotation that provides a callback to be executed during manifest publishing.
- [McpServerEndpointAnnotation](/reference/api/csharp/aspire.hosting/mcpserverendpointannotation.md) -- `class` `sealed` -- Represents an annotation that identifies an endpoint on a resource that hosts a Model Context Protocol (MCP) server.
- [NetworkEndpointSnapshot](/reference/api/csharp/aspire.hosting/networkendpointsnapshot.md) -- `record` -- Represents an AllocatedEndpoint snapshot associated with a specific network.
- [NetworkEndpointSnapshotList](/reference/api/csharp/aspire.hosting/networkendpointsnapshotlist.md) -- `class` -- Holds a list of [NetworkEndpointSnapshot](/reference/api/csharp/aspire.hosting/networkendpointsnapshot.md) for an Endpoint, providing thread-safe enumeration and addition.
- [NetworkIdentifier](/reference/api/csharp/aspire.hosting/networkidentifier.md) -- `record` -- A network identifier used to specify the network context for resources within an Aspire application model.
- [OtlpExporterAnnotation](/reference/api/csharp/aspire.hosting/otlpexporterannotation.md) -- `class` -- An annotation which indicates that a resource has OTLP exporter configured.
- [ParameterDefault](/reference/api/csharp/aspire.hosting/parameterdefault.md) -- `class` `abstract` -- Represents how a default value should be retrieved.
- [ParameterResource](/reference/api/csharp/aspire.hosting/parameterresource.md) -- `class` -- Represents a parameter resource.
- [PortAllocator](/reference/api/csharp/aspire.hosting/portallocator.md) -- `class` `sealed` -- Allocates and manages a range of ports for use in an application context.
- [ProbeAnnotation](/reference/api/csharp/aspire.hosting/probeannotation.md) -- `class` `abstract` -- Represents an annotation that specifies the probes (health, readiness, liveness, etc.) of a resource.
- [ProbeType](/reference/api/csharp/aspire.hosting/probetype.md) -- `enum` -- Enum representing the type of probe.
- [ProjectResource](/reference/api/csharp/aspire.hosting/projectresource.md) -- `class` -- A resource that represents a specified .NET project.
- [ProjectResourceExtensions](/reference/api/csharp/aspire.hosting/projectresourceextensions.md) -- `class` `static` -- Provides extension methods for [DistributedApplicationModel](/reference/api/csharp/aspire.hosting/distributedapplicationmodel.md) to work with [ProjectResource](/reference/api/csharp/aspire.hosting/projectresource.md) instances.
- [ProxySupportAnnotation](/reference/api/csharp/aspire.hosting/proxysupportannotation.md) -- `class` `sealed` -- Proxy support annotation for a resource, used to disable all endpoint proxies for a resource if desired
- [ReferenceEnvironmentInjectionAnnotation](/reference/api/csharp/aspire.hosting/referenceenvironmentinjectionannotation.md) -- `class` `sealed` -- Annotation that specifies which connection and endpoint information should be injected into environment variables when a resource is referenced using `WithReference()`.
- [ReferenceEnvironmentInjectionFlags](/reference/api/csharp/aspire.hosting/referenceenvironmentinjectionflags.md) -- `enum` -- Specifies which connection or endpoint information should be injected into environment variables when `WithReference()` is invoked.
- [ReferenceExpression](/reference/api/csharp/aspire.hosting/referenceexpression.md) -- `class` `ats export` -- Represents an expression that might be made up of multiple resource properties. For example, a connection string might be made up of a host, port, and password from different endpoints.
- [ReferenceExpressionBuilder](/reference/api/csharp/aspire.hosting/referenceexpressionbuilder.md) -- `class` `ats export` -- A builder for creating [ReferenceExpression](/reference/api/csharp/aspire.hosting/referenceexpression.md) instances.
- [ReferenceExpressionBuilderInterpolatedStringHandler](/reference/api/csharp/aspire.hosting/referenceexpressionbuilderinterpolatedstringhandler.md) -- `struct` -- Represents a handler for interpolated strings that contain expressions. Those expressions will either be literal strings or instances of types that implement both [IValueProvider](/reference/api/csharp/aspire.hosting/ivalueprovider.md) and [IManifestExpressionProvider](/reference/api/csharp/aspire.hosting/imanifestexpressionprovider.md).
- [RegistryTargetAnnotation](/reference/api/csharp/aspire.hosting/registrytargetannotation.md) -- `class` `sealed` -- Annotation that indicates a resource should use a specific container registry as its default target.
- [RelationshipSnapshot](/reference/api/csharp/aspire.hosting/relationshipsnapshot.md) -- `record` `sealed` -- A snapshot of a relationship.
- [ReplicaAnnotation](/reference/api/csharp/aspire.hosting/replicaannotation.md) -- `class` `sealed` -- Represents an annotation that specifies the number of replicas for a resource.
- [RequiredCommandAnnotation](/reference/api/csharp/aspire.hosting/requiredcommandannotation.md) -- `class` -- An annotation which declares that a resource requires a specific command/executable to be available on the local machine PATH before it can start.
- [RequiredCommandValidationContext](/reference/api/csharp/aspire.hosting/requiredcommandvalidationcontext.md) -- `class` `sealed` -- Provides context for validating a required command.
- [RequiredCommandValidationResult](/reference/api/csharp/aspire.hosting/requiredcommandvalidationresult.md) -- `class` `sealed` -- Represents the result of validating a required command.
- [ResolvedEndpoint](/reference/api/csharp/aspire.hosting/resolvedendpoint.md) -- `class` `sealed` -- Represents a resolved endpoint with computed target and exposed ports.
- [ResolvedPort](/reference/api/csharp/aspire.hosting/resolvedport.md) -- `struct` `readonly` -- Represents a resolved port with information about whether it was allocated or explicitly specified.
- [Resource](/reference/api/csharp/aspire.hosting/resource.md) -- `class` `abstract` -- Represents an abstract resource that can be used by an application, that implements [IResource](/reference/api/csharp/aspire.hosting/iresource.md).
- [ResourceAnnotationCollection](/reference/api/csharp/aspire.hosting/resourceannotationcollection.md) -- `class` `sealed` -- Represents a collection of resource metadata annotations.
- [ResourceAnnotationMutationBehavior](/reference/api/csharp/aspire.hosting/resourceannotationmutationbehavior.md) -- `enum` -- Specifies behavior of the `IResourceBuilder`1.WithAnnotation` method when adding an annotation to the [IResource.Annotations](/reference/api/csharp/aspire.hosting/iresource/properties.md#annotations) collection of a resource.
- [ResourceCommandAnnotation](/reference/api/csharp/aspire.hosting/resourcecommandannotation.md) -- `class` `sealed` -- Represents a command annotation for a resource.
- [ResourceCommandService](/reference/api/csharp/aspire.hosting/resourcecommandservice.md) -- `class` -- A service to execute resource commands.
- [ResourceCommandSnapshot](/reference/api/csharp/aspire.hosting/resourcecommandsnapshot.md) -- `record` `sealed` -- A snapshot of a resource command.
- [ResourceCommandState](/reference/api/csharp/aspire.hosting/resourcecommandstate.md) -- `enum` -- The state of a resource command.
- [ResourceDependencyDiscoveryMode](/reference/api/csharp/aspire.hosting/resourcedependencydiscoverymode.md) -- `enum` -- Specifies how resource dependencies are discovered.
- [ResourceEndpointsAllocatedEvent](/reference/api/csharp/aspire.hosting/resourceendpointsallocatedevent.md) -- `class` `ats export` -- This event is raised by orchestrators to signal to resources that their endpoints have been allocated.
- [ResourceEvent](/reference/api/csharp/aspire.hosting/resourceevent.md) -- `class` -- Represents a change in the state of a resource.
- [ResourceExtensions](/reference/api/csharp/aspire.hosting/resourceextensions.md) -- `class` `static` -- Provides extension methods for the [IResource](/reference/api/csharp/aspire.hosting/iresource.md) interface.
- [ResourceIconAnnotation](/reference/api/csharp/aspire.hosting/resourceiconannotation.md) -- `class` `sealed` -- Specifies the icon to use when displaying a resource in the dashboard.
- [ResourceLoggerService](/reference/api/csharp/aspire.hosting/resourceloggerservice.md) -- `class` -- A service that provides loggers for resources to write to.
- [ResourceNameAttribute](/reference/api/csharp/aspire.hosting/resourcenameattribute.md) -- `class` `sealed` -- Signifies that a parameter represents a resource name. Decorate `String` parameters representing resource names with this attribute, e.g.: ```csharp public static IResourceBuilder<MyResource> AddCustomResource(this IDistributedApplicationBuilder builder, [ResourceName] string name) ```
- [ResourceNotificationService](/reference/api/csharp/aspire.hosting/resourcenotificationservice.md) -- `class` -- A service that allows publishing and subscribing to changes in the state of a resource.
- [ResourceNotificationServiceOptions](/reference/api/csharp/aspire.hosting/resourcenotificationserviceoptions.md) -- `class` `sealed` -- Options for the [ResourceNotificationService](/reference/api/csharp/aspire.hosting/resourcenotificationservice.md).
- [ResourcePropertySnapshot](/reference/api/csharp/aspire.hosting/resourcepropertysnapshot.md) -- `record` `sealed` -- A snapshot of the resource property.
- [ResourceReadyEvent](/reference/api/csharp/aspire.hosting/resourcereadyevent.md) -- `class` `ats export` -- Event that is raised when a resource initially transitions to a ready state.
- [ResourceRelationshipAnnotation](/reference/api/csharp/aspire.hosting/resourcerelationshipannotation.md) -- `class` `sealed` -- An annotation which represents the relationship between two resources.
- [ResourceSnapshotAnnotation](/reference/api/csharp/aspire.hosting/resourcesnapshotannotation.md) -- `class` -- An annotation that represents the initial snapshot of a resource.
- [ResourceStateSnapshot](/reference/api/csharp/aspire.hosting/resourcestatesnapshot.md) -- `record` `sealed` -- A snapshot of the resource state
- [ResourceStoppedEvent](/reference/api/csharp/aspire.hosting/resourcestoppedevent.md) -- `class` `ats export` -- This event is raised after a resource has stopped.
- [ResourceUrlAnnotation](/reference/api/csharp/aspire.hosting/resourceurlannotation.md) -- `class` `sealed` `ats dto` -- A URL that should be displayed for a resource.
- [ResourceUrlsCallbackAnnotation](/reference/api/csharp/aspire.hosting/resourceurlscallbackannotation.md) -- `class` `sealed` -- Represents an annotation that provides a callback to modify URLs that should be displayed for the resource.
- [ResourceUrlsCallbackContext](/reference/api/csharp/aspire.hosting/resourceurlscallbackcontext.md) -- `class` `ats export` -- Represents a callback context for resource URLs.
- [UpdateCommandStateContext](/reference/api/csharp/aspire.hosting/updatecommandstatecontext.md) -- `class` `sealed` `ats export` -- Context for [ResourceCommandAnnotation.UpdateState](/reference/api/csharp/aspire.hosting/resourcecommandannotation/properties.md#updatestate).
- [UrlDisplayLocation](/reference/api/csharp/aspire.hosting/urldisplaylocation.md) -- `enum` -- Specifies where the URL should be displayed.
- [UrlDisplayPropertiesSnapshot](/reference/api/csharp/aspire.hosting/urldisplaypropertiessnapshot.md) -- `record` `sealed` -- A snapshot of the display properties for a url.
- [UrlSnapshot](/reference/api/csharp/aspire.hosting/urlsnapshot.md) -- `record` `sealed` -- A snapshot of the URL.
- [ValueProviderContext](/reference/api/csharp/aspire.hosting/valueprovidercontext.md) -- `class` -- Provides context for value resolution.
- [ValueSnapshot<T>](/reference/api/csharp/aspire.hosting/valuesnapshot-1.md) -- `class` `sealed` -- Provides an asynchronously initialized value that: - Can be awaited via GetValueAsync() until the first value or exception is set. - Exposes the latest value after it has been set (supports re-setting). - Tracks whether a value or exception was ever set via IsValueSet. - Supports setting an exception that will be thrown by GetValueAsync. Thread-safe for concurrent SetValue / SetException / GetValueAsync calls.
- [VolumeSnapshot](/reference/api/csharp/aspire.hosting/volumesnapshot.md) -- `record` `sealed` -- A snapshot of a volume, mounted to a container.
- [WaitAnnotation](/reference/api/csharp/aspire.hosting/waitannotation.md) -- `class` `sealed` -- Represents a wait relationship between two resources.
- [WaitBehavior](/reference/api/csharp/aspire.hosting/waitbehavior.md) -- `enum` -- Specifies the behavior of the wait.
- [WaitType](/reference/api/csharp/aspire.hosting/waittype.md) -- `enum` -- Specifies the type of Wait applied to dependency resources.

### Aspire.Hosting.ApplicationModel.Docker

- [ContainerFilesExtensions](/reference/api/csharp/aspire.hosting/containerfilesextensions.md) -- `class` `static` -- Provides Dockerfile builder extension methods for supporting [ResourceBuilderExtensions.PublishWithContainerFiles(IResourceBuilder<T>, IResourceBuilder<IResourceWithContainerFiles>, string)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#publishwithcontainerfiles-iresourcebuilder-t-iresourcebuilder-iresourcewithcontainerfiles-string).
- [DockerfileBuilder](/reference/api/csharp/aspire.hosting/dockerfilebuilder.md) -- `class` -- Builder for creating Dockerfiles programmatically.
- [DockerfileStage](/reference/api/csharp/aspire.hosting/dockerfilestage.md) -- `class` -- Represents a stage within a multi-stage Dockerfile.
- [DockerfileStatement](/reference/api/csharp/aspire.hosting/dockerfilestatement.md) -- `class` `abstract` -- Represents a statement that can be written to a Dockerfile.

### Aspire.Hosting.Eventing

- [DistributedApplicationEventing](/reference/api/csharp/aspire.hosting/distributedapplicationeventing.md) -- `class` -- Supports publishing and subscribing to events which are executed during the AppHost lifecycle.
- [DistributedApplicationEventSubscription](/reference/api/csharp/aspire.hosting/distributedapplicationeventsubscription.md) -- `class` `ats export` -- Represents a subscription to an event that is published during the lifecycle of the AppHost.
- [DistributedApplicationResourceEventSubscription](/reference/api/csharp/aspire.hosting/distributedapplicationresourceeventsubscription.md) -- `class` `ats export` -- Represents a subscription to an event that is published during the lifecycle of the AppHost for a specific resource.
- [EventDispatchBehavior](/reference/api/csharp/aspire.hosting/eventdispatchbehavior.md) -- `enum` -- Controls how events are dispatched to subscribers.
- [IDistributedApplicationEvent](/reference/api/csharp/aspire.hosting/idistributedapplicationevent.md) -- `interface` `ats export` -- Represents an event that is published during the lifecycle of the AppHost.
- [IDistributedApplicationEventing](/reference/api/csharp/aspire.hosting/idistributedapplicationeventing.md) -- `interface` `ats export` -- Supports publishing and subscribing to events which are executed during the AppHost lifecycle.
- [IDistributedApplicationResourceEvent](/reference/api/csharp/aspire.hosting/idistributedapplicationresourceevent.md) -- `interface` `ats export` -- Represents an event that is published during the lifecycle of the AppHost for a specific resource.

### Aspire.Hosting.Lifecycle

- [EventingSubscriberServiceCollectionExtensions](/reference/api/csharp/aspire.hosting/eventingsubscriberservicecollectionextensions.md) -- `class` `static` -- Provides extension methods for adding event subscribers to the `DependencyInjection.IServiceCollection`.
- [IDistributedApplicationEventingSubscriber](/reference/api/csharp/aspire.hosting/idistributedapplicationeventingsubscriber.md) -- `interface` -- Defines an interface for services that want to subscribe to events from IDistributedApplicationEventing. This allows a service to subscribe to BeforeStartEvent before the application actually starts.
- [IDistributedApplicationLifecycleHook](/reference/api/csharp/aspire.hosting/idistributedapplicationlifecyclehook.md) -- `interface` `obsolete` -- Defines an interface for hooks that are executed during the lifecycle of a distributed application.
- [LifecycleHookServiceCollectionExtensions](/reference/api/csharp/aspire.hosting/lifecyclehookservicecollectionextensions.md) -- `class` `static` -- Provides extension methods for adding lifecycle hooks to the `DependencyInjection.IServiceCollection`.

### Aspire.Hosting.Pipelines

- [CompletionState](/reference/api/csharp/aspire.hosting/completionstate.md) -- `enum` -- Represents the completion state of a publishing activity (task, step, or top-level operation).
- [DeploymentStateSection](/reference/api/csharp/aspire.hosting/deploymentstatesection.md) -- `class` `sealed` -- Represents a section of deployment state with version tracking for concurrency control.
- [IDeploymentStateManager](/reference/api/csharp/aspire.hosting/ideploymentstatemanager.md) -- `interface` -- Provides deployment state management functionality.
- [IDistributedApplicationPipeline](/reference/api/csharp/aspire.hosting/idistributedapplicationpipeline.md) -- `interface` -- Represents a pipeline for executing deployment steps in a distributed application.
- [IPipelineActivityReporter](/reference/api/csharp/aspire.hosting/ipipelineactivityreporter.md) -- `interface` -- Interface for reporting publishing activities.
- [IPipelineOutputService](/reference/api/csharp/aspire.hosting/ipipelineoutputservice.md) -- `interface` -- Service for managing pipeline output directories.
- [IReportingStep](/reference/api/csharp/aspire.hosting/ireportingstep.md) -- `interface` -- Represents a publishing step, which can contain multiple tasks.
- [IReportingTask](/reference/api/csharp/aspire.hosting/ireportingtask.md) -- `interface` -- Represents a publishing task, which belongs to a step.
- [MarkdownString](/reference/api/csharp/aspire.hosting/markdownstring.md) -- `class` `sealed` -- Represents a string that contains Markdown-formatted content.
- [NullPublishingActivityReporter](/reference/api/csharp/aspire.hosting/nullpublishingactivityreporter.md) -- `class` `sealed` -- A no-op implementation of [IPipelineActivityReporter](/reference/api/csharp/aspire.hosting/ipipelineactivityreporter.md) for testing purposes.
- [PipelineConfigurationAnnotation](/reference/api/csharp/aspire.hosting/pipelineconfigurationannotation.md) -- `class` -- An annotation that registers a callback to execute during the pipeline configuration phase, allowing modification of step dependencies and relationships.
- [PipelineConfigurationContext](/reference/api/csharp/aspire.hosting/pipelineconfigurationcontext.md) -- `class` `ats export` -- Provides contextual information for pipeline configuration callbacks.
- [PipelineContext](/reference/api/csharp/aspire.hosting/pipelinecontext.md) -- `class` `sealed` `ats export` -- Provides contextual information and services for the pipeline execution process of a distributed application.
- [PipelineOptions](/reference/api/csharp/aspire.hosting/pipelineoptions.md) -- `class` -- Represents the options for executing a pipeline.
- [PipelineStep](/reference/api/csharp/aspire.hosting/pipelinestep.md) -- `class` `ats export` -- Represents a step in the deployment pipeline.
- [PipelineStepAnnotation](/reference/api/csharp/aspire.hosting/pipelinestepannotation.md) -- `class` -- An annotation that creates pipeline steps for a resource during deployment.
- [PipelineStepContext](/reference/api/csharp/aspire.hosting/pipelinestepcontext.md) -- `class` `sealed` `ats export` -- Provides contextual information for a specific pipeline step execution.
- [PipelineStepExtensions](/reference/api/csharp/aspire.hosting/pipelinestepextensions.md) -- `class` `static` -- Extension methods for pipeline steps.
- [PipelineStepFactoryContext](/reference/api/csharp/aspire.hosting/pipelinestepfactorycontext.md) -- `class` `ats export` -- Provides contextual information for creating pipeline steps from a [PipelineStepAnnotation](/reference/api/csharp/aspire.hosting/pipelinestepannotation.md).
- [PipelineStepFactoryExtensions](/reference/api/csharp/aspire.hosting/pipelinestepfactoryextensions.md) -- `class` `static` -- Provides extension methods for adding pipeline steps to resources.
- [PipelineSummary](/reference/api/csharp/aspire.hosting/pipelinesummary.md) -- `class` `sealed` `ats export` -- Represents pipeline summary information to be displayed after pipeline completion. This is a general-purpose key-value collection that pipeline steps can contribute to.
- [PipelineSummaryItem](/reference/api/csharp/aspire.hosting/pipelinesummaryitem.md) -- `class` `sealed` -- Represents a single item in a [PipelineSummary](/reference/api/csharp/aspire.hosting/pipelinesummary.md), consisting of a key, a value, and a flag indicating whether the value contains Markdown formatting.
- [PublishCompletionOptions](/reference/api/csharp/aspire.hosting/publishcompletionoptions.md) -- `class` `sealed` -- Options for completing the publishing process.
- [PublishingExtensions](/reference/api/csharp/aspire.hosting/publishingextensions.md) -- `class` `static` `ats ignored` -- Extension methods for [IReportingStep](/reference/api/csharp/aspire.hosting/ireportingstep.md) and [IReportingTask](/reference/api/csharp/aspire.hosting/ireportingtask.md) to provide direct operations.
- [WellKnownPipelineSteps](/reference/api/csharp/aspire.hosting/wellknownpipelinesteps.md) -- `class` `static` -- Defines well-known pipeline step names used in the deployment pipeline.
- [WellKnownPipelineTags](/reference/api/csharp/aspire.hosting/wellknownpipelinetags.md) -- `class` `static` -- Defines well-known pipeline tags used to categorize pipeline steps.

### Aspire.Hosting.Publishing

- [AfterPublishEvent](/reference/api/csharp/aspire.hosting/afterpublishevent.md) -- `class` `sealed` -- This event is published after the distributed application is published.
- [BeforePublishEvent](/reference/api/csharp/aspire.hosting/beforepublishevent.md) -- `class` `sealed` -- This event is published before the distributed application is published.
- [BuildImageSecretType](/reference/api/csharp/aspire.hosting/buildimagesecrettype.md) -- `enum` -- Specifies the type of a build secret.
- [BuildImageSecretValue](/reference/api/csharp/aspire.hosting/buildimagesecretvalue.md) -- `record` -- Represents a resolved build secret with its value and type.
- [ContainerImageBuildOptions](/reference/api/csharp/aspire.hosting/containerimagebuildoptions.md) -- `class` -- Options for building container images.
- [ContainerImageDestination](/reference/api/csharp/aspire.hosting/containerimagedestination.md) -- `enum` -- Specifies the destination for container images.
- [ContainerImageFormat](/reference/api/csharp/aspire.hosting/containerimageformat.md) -- `enum` -- Specifies the format for container images.
- [ContainerTargetPlatform](/reference/api/csharp/aspire.hosting/containertargetplatform.md) -- `enum` -- Specifies the target platform for container images.
- [IContainerRuntime](/reference/api/csharp/aspire.hosting/icontainerruntime.md) -- `interface` -- Represents a container runtime (e.g., Docker, Podman) that can be used to build, tag, push, and manage container images.
- [IDistributedApplicationPublisher](/reference/api/csharp/aspire.hosting/idistributedapplicationpublisher.md) -- `interface` `obsolete` -- Defines the interface for publishing a distributed application.
- [IResourceContainerImageManager](/reference/api/csharp/aspire.hosting/iresourcecontainerimagemanager.md) -- `interface` -- Provides a service to publishers for building and pushing container images that represent a resource.
- [ManifestPublishingContext](/reference/api/csharp/aspire.hosting/manifestpublishingcontext.md) -- `class` `sealed` -- Contextual information used for manifest publishing during this execution of the AppHost.
- [PublishingOptions](/reference/api/csharp/aspire.hosting/publishingoptions.md) -- `class` `obsolete` -- Represents the options for publishing an application.
