Table of Contents

Class KeyedServiceResolver

Namespace
ToSic.Sys.DI
Assembly
ToSic.Sys.Core.dll

Helper to resolve keyed services from the DI container, and to discover which keys are available for a specific service.

[InternalApi_DoNotUse_MayChangeWithoutNotice]
public static class KeyedServiceResolver
Inheritance
object
KeyedServiceResolver

Remarks

Added in v22, should still be considered work in progress.

Methods

GetAllKeyedServices<TService>(IServiceProvider)

Retrieve all keyed services for a given service type. Note that for each key, multiple services could be returned.

[InternalApi_DoNotUse_MayChangeWithoutNotice]
public static IEnumerable<KeyValuePair<string, TService>> GetAllKeyedServices<TService>(this IServiceProvider provider)

Parameters

provider IServiceProvider

Returns

IEnumerable<KeyValuePair<string, TService>>

Type Parameters

TService

GetAllKeysForService<TService>(IServiceProvider)

Retrieve all keys for a given service type. For discovering which keys are available for a specific service.

[InternalApi_DoNotUse_MayChangeWithoutNotice]
public static IEnumerable<string> GetAllKeysForService<TService>(this IServiceProvider provider)

Parameters

provider IServiceProvider

Returns

IEnumerable<string>

Type Parameters

TService

Remarks

It requires that keyed services were registered using the AddKeyedTransientWithMarker<TService, TImplementation>(IServiceCollection, string).

Added in v22