# ExecutionConfigurationBuilderExtensions Methods

- Package: [Aspire.Hosting](/reference/api/csharp/aspire.hosting.md)
- Type: [ExecutionConfigurationBuilderExtensions](/reference/api/csharp/aspire.hosting/executionconfigurationbuilderextensions.md)
- Kind: `Methods`
- Members: `4`

Provides extension methods for [IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md).

## WithArgumentsConfig(IExecutionConfigurationBuilder)

- Name: `WithArgumentsConfig(IExecutionConfigurationBuilder)`
- Modifiers: `extension`
- Returns: [IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.Hosting/ApplicationModel/ExecutionConfigurationBuilderExtensions.cs#L22)

Adds a command line arguments configuration gatherer to the builder.

```csharp
public static class ExecutionConfigurationBuilderExtensions
{
    public static IExecutionConfigurationBuilder WithArgumentsConfig(
        this IExecutionConfigurationBuilder builder)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md))
  The builder to add the configuration gatherer to.

## Returns

[IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md) -- The builder with the configuration gatherer added.

## ATS metadata

### ATS export

- Available to Polyglot AppHosts through the Aspire Type System.

## WithCertificateTrustConfig(IExecutionConfigurationBuilder, Func<CertificateTrustScope, CertificateTrustExecutionConfigurationContext>)

> **Experimental:** ASPIRECERTIFICATES001 - [Learn more](/diagnostics/aspirecertificates001/)

- Name: `WithCertificateTrustConfig(IExecutionConfigurationBuilder, Func<CertificateTrustScope, CertificateTrustExecutionConfigurationContext>)`
- Modifiers: `extension`
- Returns: [IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.Hosting/ApplicationModel/ExecutionConfigurationBuilderExtensions.cs#L46)

Adds a certificate trust configuration gatherer to the builder.

```csharp
public static class ExecutionConfigurationBuilderExtensions
{
    public static IExecutionConfigurationBuilder WithCertificateTrustConfig(
        this IExecutionConfigurationBuilder builder,
        Func<CertificateTrustScope, CertificateTrustExecutionConfigurationContext> configContextFactory)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md))
  The builder to add the configuration gatherer to.
- `configContextFactory` (`Func<CertificateTrustScope, CertificateTrustExecutionConfigurationContext>`)
  A factory function to create the configuration context.

## Returns

[IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md) -- The builder with the configuration gatherer added.

## ATS metadata

### ATS export

- Available to Polyglot AppHosts through the Aspire Type System.

## WithEnvironmentVariablesConfig(IExecutionConfigurationBuilder)

- Name: `WithEnvironmentVariablesConfig(IExecutionConfigurationBuilder)`
- Modifiers: `extension`
- Returns: [IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.Hosting/ApplicationModel/ExecutionConfigurationBuilderExtensions.cs#L33)

Adds an environment variables configuration gatherer to the builder.

```csharp
public static class ExecutionConfigurationBuilderExtensions
{
    public static IExecutionConfigurationBuilder WithEnvironmentVariablesConfig(
        this IExecutionConfigurationBuilder builder)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md))
  The builder to add the configuration gatherer to.

## Returns

[IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md) -- The builder with the configuration gatherer added.

## ATS metadata

### ATS export

- Available to Polyglot AppHosts through the Aspire Type System.

## WithHttpsCertificateConfig(IExecutionConfigurationBuilder, Func<X509Certificate2, HttpsCertificateExecutionConfigurationContext>)

> **Experimental:** ASPIRECERTIFICATES001 - [Learn more](/diagnostics/aspirecertificates001/)

- Name: `WithHttpsCertificateConfig(IExecutionConfigurationBuilder, Func<X509Certificate2, HttpsCertificateExecutionConfigurationContext>)`
- Modifiers: `extension`
- Returns: [IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md)
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.Hosting/ApplicationModel/ExecutionConfigurationBuilderExtensions.cs#L59)

Adds a server authentication certificate configuration gatherer to the builder.

```csharp
public static class ExecutionConfigurationBuilderExtensions
{
    public static IExecutionConfigurationBuilder WithHttpsCertificateConfig(
        this IExecutionConfigurationBuilder builder,
        Func<X509Certificate2, HttpsCertificateExecutionConfigurationContext> configContextFactory)
    {
        // ...
    }
}
```

## Parameters

- `builder` ([IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md))
  The builder to add the configuration gatherer to.
- `configContextFactory` (`Func<X509Certificate2, HttpsCertificateExecutionConfigurationContext>`)
  A factory function to create the configuration context.

## Returns

[IExecutionConfigurationBuilder](/reference/api/csharp/aspire.hosting/iexecutionconfigurationbuilder.md) -- The builder with the configuration gatherer added.

## ATS metadata

### Ignored by ATS

- Reason: X509Certificate2 callback input is not ATS-compatible. Use the ATS-specific withHttpsCertificateConfig export instead.
