# AspireMilvusExtensions Methods

- Package: [Aspire.Milvus.Client](/reference/api/csharp/aspire.milvus.client.md)
- Type: [AspireMilvusExtensions](/reference/api/csharp/aspire.milvus.client/aspiremilvusextensions.md)
- Kind: `Methods`
- Members: `2`

Provides extension methods for registering Milvus-related services in an `Hosting.IHostApplicationBuilder`.

## AddKeyedMilvusClient(IHostApplicationBuilder, string, Action<MilvusClientSettings>)

- Name: `AddKeyedMilvusClient(IHostApplicationBuilder, string, Action<MilvusClientSettings>)`
- Modifiers: `extension`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Components/Aspire.Milvus.Client/AspireMilvusExtensions.cs#L52-L55)

Registers `Client.MilvusClient` as a keyed singleton for the given `name` in the services provided by the `builder`. Configures logging for the `Client.MilvusClient`.

```csharp
public static class AspireMilvusExtensions
{
    public static void AddKeyedMilvusClient(
        this IHostApplicationBuilder builder,
        string name,
        Action<MilvusClientSettings>? configureSettings = null)
    {
        // ...
    }
}
```

## Parameters

- `builder` (`IHostApplicationBuilder`)
  The `Hosting.IHostApplicationBuilder` to read config from and add services to.
- `name` (`string`)
  The connection name to use to find a connection string.
- `configureSettings` (`Action<MilvusClientSettings>`) `optional`
  An optional method that can be used for customizing the [MilvusClientSettings](/reference/api/csharp/aspire.milvus.client/milvusclientsettings.md). It's invoked after the settings are read from the configuration.

## Exceptions

- `InvalidOperationException` -- If required ConnectionString is not provided in configuration section

## Remarks

Reads the configuration from "Aspire:Milvus:Client" section.

## AddMilvusClient(IHostApplicationBuilder, string, Action<MilvusClientSettings>)

- Name: `AddMilvusClient(IHostApplicationBuilder, string, Action<MilvusClientSettings>)`
- Modifiers: `extension`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/becb48e2d61099e35ae336d527d3875e928d6594/src/Components/Aspire.Milvus.Client/AspireMilvusExtensions.cs#L35-L36)

Registers `Client.MilvusClient` as a singleton in the services provided by the `builder`. Configures logging for the `Client.MilvusClient`.

```csharp
public static class AspireMilvusExtensions
{
    public static void AddMilvusClient(
        this IHostApplicationBuilder builder,
        string connectionName,
        Action<MilvusClientSettings>? configureSettings = null)
    {
        // ...
    }
}
```

## Parameters

- `builder` (`IHostApplicationBuilder`)
  The `Hosting.IHostApplicationBuilder` to read config from and add services to.
- `connectionName` (`string`)
  The connection name to use to find a connection string.
- `configureSettings` (`Action<MilvusClientSettings>`) `optional`
  An optional method that can be used for customizing the [MilvusClientSettings](/reference/api/csharp/aspire.milvus.client/milvusclientsettings.md). It's invoked after the settings are read from the configuration.

## Exceptions

- `InvalidOperationException` -- If required ConnectionString is not provided in configuration section

## Remarks

Reads the configuration from "Aspire:Milvus:Client" section.
