# ExecutableLaunchConfiguration

- Kind: `class`
- Package: [Aspire.Hosting](/reference/api/csharp/aspire.hosting.md)
- Version: `13.5.3`
- Namespace: `Aspire.Hosting.ApplicationModel`
- Target framework: `net10.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/b5f143315ffb6968ea939a9978797a5b20e4c688/src/Aspire.Hosting/ApplicationModel/ExecutableLaunchConfiguration.cs)

Base properties shared by all launch configurations handed to an IDE or extension host.

## Definition

```csharp
namespace Aspire.Hosting.ApplicationModel;

public class ExecutableLaunchConfiguration
{
    // ...
}
```

## Remarks

A launch configuration describes how a resource should be started when Aspire is running inside an IDE debug session. It is serialized to JSON and attached to the underlying orchestrator object, so the property names below (and any added by derived types) are part of the IDE contract.

Integrations create a derived type and supply it through [ResourceBuilderExtensions.WithDebugSupport(IResourceBuilder<T>, Func<string, TLaunchConfiguration>, string)](/reference/api/csharp/aspire.hosting/resourcebuilderextensions/methods.md#withdebugsupport-iresourcebuilder-t-func-string-tlaunchconfiguration-string) or its asynchronous overload.

## Constructors

- [ExecutableLaunchConfiguration(string)](/reference/api/csharp/aspire.hosting/executablelaunchconfiguration/constructors.md#constructor-string) -- Base properties shared by all launch configurations handed to an IDE or extension host.

## Properties

- [Mode](/reference/api/csharp/aspire.hosting/executablelaunchconfiguration/properties.md#mode) : `string` `get; set` -- Gets or sets the launch mode, one of the values on [ExecutableLaunchMode](/reference/api/csharp/aspire.hosting/executablelaunchmode.md).
- [Type](/reference/api/csharp/aspire.hosting/executablelaunchconfiguration/properties.md#type) : `string` `get; set` -- Gets or sets the launch configuration type identifier.

## Examples

A launch configuration for a hypothetical language integration:

```csharp
internal sealed class ContosoLaunchConfiguration() : ExecutableLaunchConfiguration("contoso")
{
    [JsonPropertyName("script_path")]
    public string ScriptPath { get; set; } = string.Empty;
}
```
