Search Results for

    Show / Hide Table of Contents

    Class ServiceCollectionServiceExtensions

    Extensions for IServiceCollection.

    Inheritance
    object
    ServiceCollectionServiceExtensions
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: nanoFramework.DependencyInjection
    Assembly: nanoFramework.DependencyInjection.dll
    Syntax
    public static class ServiceCollectionServiceExtensions

    Methods

    AddScoped(IServiceCollection, Type)

    Adds a scoped service of the type specified in serviceType to the specified IServiceCollection.

    Declaration
    public static IServiceCollection AddScoped(this IServiceCollection services, Type serviceType)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection to add the service to.

    Type serviceType

    The type of the service to register and the implementation to use.

    Returns
    Type Description
    IServiceCollection

    A reference to this instance after the operation has completed.

    Exceptions
    Type Condition
    ArgumentNullException

    services can't be null.

    See Also
    Scoped

    AddScoped(IServiceCollection, Type, Type)

    Adds a scoped service of the type specified in serviceType with an implementation of the type specified in implementationType to the specified IServiceCollection.

    Declaration
    public static IServiceCollection AddScoped(this IServiceCollection services, Type serviceType, Type implementationType)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection to add the service to.

    Type serviceType

    The type of the service to register.

    Type implementationType

    The implementation type of the service.

    Returns
    Type Description
    IServiceCollection

    A reference to this instance after the operation has completed.

    Exceptions
    Type Condition
    ArgumentNullException

    services can't be null.

    See Also
    Scoped

    AddSingleton(IServiceCollection, Type)

    Adds a singleton service of the type specified in serviceType to the specified IServiceCollection.

    Declaration
    public static IServiceCollection AddSingleton(this IServiceCollection services, Type serviceType)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection to add the service to.

    Type serviceType

    The type of the service to register and the implementation to use.

    Returns
    Type Description
    IServiceCollection

    A reference to this instance after the operation has completed.

    Exceptions
    Type Condition
    ArgumentNullException

    services can't be null.

    See Also
    Singleton

    AddSingleton(IServiceCollection, Type, object)

    Adds a singleton service of the type specified in serviceType with an instance specified in implementationInstance to the specified IServiceCollection.

    Declaration
    public static IServiceCollection AddSingleton(this IServiceCollection services, Type serviceType, object implementationInstance)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection to add the service to.

    Type serviceType

    The type of the service to register.

    object implementationInstance

    The instance of the service.

    Returns
    Type Description
    IServiceCollection

    A reference to this instance after the operation has completed.

    Exceptions
    Type Condition
    ArgumentNullException

    services can't be null.

    See Also
    Singleton

    AddSingleton(IServiceCollection, Type, Type)

    Adds a singleton service of the type specified in serviceType with an implementation of the type specified in implementationType to the specified IServiceCollection.

    Declaration
    public static IServiceCollection AddSingleton(this IServiceCollection services, Type serviceType, Type implementationType)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection to add the service to.

    Type serviceType

    The type of the service to register.

    Type implementationType

    The implementation type of the service.

    Returns
    Type Description
    IServiceCollection

    A reference to this instance after the operation has completed.

    Exceptions
    Type Condition
    ArgumentNullException

    services can't be null.

    See Also
    Singleton

    AddTransient(IServiceCollection, Type)

    Adds a transient service of the type specified in serviceType to the specified IServiceCollection.

    Declaration
    public static IServiceCollection AddTransient(this IServiceCollection services, Type serviceType)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection to add the service to.

    Type serviceType

    The type of the service to register and the implementation to use.

    Returns
    Type Description
    IServiceCollection

    A reference to this instance after the operation has completed.

    Exceptions
    Type Condition
    ArgumentNullException

    services can't be null.

    See Also
    Transient

    AddTransient(IServiceCollection, Type, Type)

    Adds a transient service of the type specified in serviceType with an implementation of the type specified in implementationType to the specified IServiceCollection.

    Declaration
    public static IServiceCollection AddTransient(this IServiceCollection services, Type serviceType, Type implementationType)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection to add the service to.

    Type serviceType

    The type of the service to register.

    Type implementationType

    The implementation type of the service.

    Returns
    Type Description
    IServiceCollection

    A reference to this instance after the operation has completed.

    Exceptions
    Type Condition
    ArgumentNullException

    services can't be null.

    See Also
    Transient

    RemoveAll(IServiceCollection, Type)

    Removes all services of type serviceType in IServiceCollection.

    Declaration
    public static IServiceCollection RemoveAll(this IServiceCollection collection, Type serviceType)
    Parameters
    Type Name Description
    IServiceCollection collection

    The IServiceCollection.

    Type serviceType

    The service type to remove.

    Returns
    Type Description
    IServiceCollection

    The IServiceCollection for chaining.

    Exceptions
    Type Condition
    ArgumentNullException

    serviceType can't be null.

    Replace(IServiceCollection, ServiceDescriptor)

    Removes the first service in IServiceCollection with the same service type as descriptor and adds descriptor to the collection.

    Declaration
    public static IServiceCollection Replace(this IServiceCollection collection, ServiceDescriptor descriptor)
    Parameters
    Type Name Description
    IServiceCollection collection

    The IServiceCollection.

    ServiceDescriptor descriptor

    The ServiceDescriptor to replace with.

    Returns
    Type Description
    IServiceCollection

    The IServiceCollection for chaining.

    Exceptions
    Type Condition
    ArgumentNullException

    collection or descriptor can't be null.

    TryAdd(IServiceCollection, ServiceDescriptor)

    Adds the specified descriptor to the collection if the service type hasn't already been registered.

    Declaration
    public static void TryAdd(this IServiceCollection collection, ServiceDescriptor descriptor)
    Parameters
    Type Name Description
    IServiceCollection collection

    The IServiceCollection.

    ServiceDescriptor descriptor

    The ServiceDescriptor to add.

    Exceptions
    Type Condition
    ArgumentNullException

    collection or descriptor can't be null.

    TryAddEnumerable(IServiceCollection, IEnumerable)

    Adds the specified ServiceDescriptors if an existing descriptor with the same ServiceType and an implementation that does not already exist in services...

    Declaration
    public static void TryAddEnumerable(this IServiceCollection services, IEnumerable descriptors)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection.

    IEnumerable descriptors

    The ServiceDescriptors.

    Remarks

    Use TryAddEnumerable(IServiceCollection, ServiceDescriptor) when registering a service implementation of a service type that supports multiple registrations of the same service type. Using Add(ServiceDescriptor) is not idempotent and can add duplicate ServiceDescriptor instances if called twice. Using TryAddEnumerable(IServiceCollection, ServiceDescriptor) will prevent registration of multiple implementation types.

    Exceptions
    Type Condition
    ArgumentNullException

    services or descriptors can't be null.

    TryAddEnumerable(IServiceCollection, ServiceDescriptor)

    Adds a ServiceDescriptor if an existing descriptor with the same ServiceType and an implementation that does not already exist in services...

    Declaration
    public static void TryAddEnumerable(this IServiceCollection services, ServiceDescriptor descriptor)
    Parameters
    Type Name Description
    IServiceCollection services

    The IServiceCollection.

    ServiceDescriptor descriptor

    The ServiceDescriptor.

    Remarks

    Use TryAddEnumerable(IServiceCollection, ServiceDescriptor) when registering a service implementation of a service type that supports multiple registrations of the same service type. Using Add(ServiceDescriptor) is not idempotent and can add duplicate ServiceDescriptor instances if called twice. Using TryAddEnumerable(IServiceCollection, ServiceDescriptor) will prevent registration of multiple implementation types.

    Exceptions
    Type Condition
    ArgumentException

    Implementation type cannot be 'implementationType' because it is indistinguishable from other services registered for 'descriptor.ServiceType'.

    ArgumentNullException

    services or descriptor can't be null.

    In this article
    Back to top Copyright © 2023 nanoFramework Contributors
    Generated by DocFX