# InternalServiceCollectionExtensions.AddFromExisting(IServiceCollection, Type, Type)

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.utilities.internal.internalservicecollectionextensions/) | [Methods](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.utilities.internal.internalservicecollectionextensions/methods/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Utilities/ServiceCollectionExtensions.cs#L31-L51)

```csharp
public static void AddFromExisting(this IServiceCollection services, Type service, Type implementation)
```

Registers an existing registration of `implementation` as a provider of service type `service`.

### Parameters

- `services` (`IServiceCollection`): The service collection.
- `service` (`Type`): The service type being provided.
- `implementation` (`Type`): The implementation of `service`.
