Share via


ServicesContainer Class

An abstract class that provides a container for services used by ASP.NET Web API.

Inheritance Hierarchy

System.Object
  System.Web.Http.Controllers.ServicesContainer
    System.Web.Http.Controllers.ControllerServices
    System.Web.Http.Services.DefaultServices

Namespace:  System.Web.Http.Controllers
Assembly:  System.Web.Http (in System.Web.Http.dll)

Syntax

'Declaration
Public MustInherit Class ServicesContainer _
    Implements IDisposable
'Usage
Dim instance As ServicesContainer
public abstract class ServicesContainer : IDisposable
public ref class ServicesContainer abstract : IDisposable
[<AbstractClassAttribute>]
type ServicesContainer =  
    class 
        interface IDisposable 
    end
public abstract class ServicesContainer implements IDisposable

The ServicesContainer type exposes the following members.

Constructors

  Name Description
Protected method ServicesContainer Initializes a new instance of the ServicesContainer class.

Top

Methods

  Name Description
Public method Add Adds a service to the end of services list for the given service type.
Public method AddRange Adds the services of the specified collection to the end of the services list for the given service type.
Public method Clear Removes all the service instances of the given service type.
Protected method ClearMultiple Removes all instances of a multi-instance service type.
Protected method ClearSingle Removes a single-instance service type.
Public method Dispose Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
Public method Equals (Inherited from Object.)
Protected method Finalize (Inherited from Object.)
Public method FindIndex Searches for a service that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence.
Public method GetHashCode (Inherited from Object.)
Public method GetService Gets a service instance of a specified type.
Protected method GetServiceInstances Gets a mutable list of service instances of a specified type.
Public method GetServices Gets a collection of service instanes of a specified type.
Public method GetType (Inherited from Object.)
Public method Insert Inserts a service into the collection at the specified index.
Public method InsertRange Inserts the elements of the collection into the service list at the specified index.
Public method IsSingleService Determine whether the service type should be fetched with GetService or GetServices.
Protected method MemberwiseClone (Inherited from Object.)
Public method Remove Removes the first occurrence of the given service from the service list for the given service type.
Public method RemoveAll Removes all the elements that match the conditions defined by the specified predicate.
Public method RemoveAt Removes the service at the specified index.
Public method Replace Replaces all existing services for the given service type with the given service instance. This works for both singular and plural services.
Protected method ReplaceMultiple Replaces all instances of a multi-instance service with a new instance.
Public method ReplaceRange Replaces all existing services for the given service type with the given service instances.
Protected method ReplaceSingle Replaces a single-instance service of a specified type.
Protected method ResetCache Removes the cached values for a single service type.
Public method ToString (Inherited from Object.)

Top

Extension Methods

  Name Description
Public Extension Method GetActionInvoker Gets the IHttpActionInvoker service. (Defined by ServicesExtensions.)
Public Extension Method GetActionSelector Gets the IHttpActionSelector service. (Defined by ServicesExtensions.)
Public Extension Method GetActionValueBinder Gets the IActionValueBinder service. (Defined by ServicesExtensions.)
Public Extension Method GetApiExplorer Gets the IApiExplorer service. (Defined by ServicesExtensions.)
Public Extension Method GetAssembliesResolver Gets the IAssembliesResolver service. (Defined by ServicesExtensions.)
Public Extension Method GetBodyModelValidator Gets the IBodyModelValidator service. (Defined by ServicesExtensions.)
Public Extension Method GetContentNegotiator Gets the IContentNegotiator service. (Defined by ServicesExtensions.)
Public Extension Method GetDocumentationProvider Gets the IDocumentationProvider service. (Defined by ServicesExtensions.)
Public Extension Method GetFilterProviders Gets the IFilterProvider collection. (Defined by ServicesExtensions.)
Public Extension Method GetHostBufferPolicySelector Gets the IHostBufferPolicySelector service. (Defined by ServicesExtensions.)
Public Extension Method GetHttpControllerActivator Gets the IHttpControllerActivator service. (Defined by ServicesExtensions.)
Public Extension Method GetHttpControllerSelector Gets the IHttpControllerSelector service. (Defined by ServicesExtensions.)
Public Extension Method GetHttpControllerTypeResolver Gets the IHttpControllerTypeResolver service. (Defined by ServicesExtensions.)
Public Extension Method GetModelBinderProviders Gets the ModelBinderProvider collection. (Defined by ServicesExtensions.)
Public Extension Method GetModelMetadataProvider Gets the ModelMetadataProvider service. (Defined by ServicesExtensions.)
Public Extension Method GetModelValidatorProviders Gets the ModelValidatorProvider collection. (Defined by ServicesExtensions.)
Public Extension Method GetTraceManager Gets the ITraceManager service. (Defined by ServicesExtensions.)
Public Extension Method GetTraceWriter Gets the ITraceWriterservice. (Defined by ServicesExtensions.)
Public Extension Method GetValueProviderFactories Gets the ValueProviderFactory collection. (Defined by ServicesExtensions.)

Top

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

System.Web.Http.Controllers Namespace