Editare

Partajați prin


ServiceProviders Class

Definition

Provides an implementation for the IServiceProvider interface with methods that enable adding services.

public ref class ServiceProviders : IServiceProvider
[System.ComponentModel.Browsable(false)]
public class ServiceProviders : IServiceProvider
[<System.ComponentModel.Browsable(false)>]
type ServiceProviders = class
    interface IServiceProvider
Public Class ServiceProviders
Implements IServiceProvider
Inheritance
ServiceProviders
Derived
Attributes
Implements

Remarks

This is a utility class for use when serializing content. The class is basically an input-only dictionary for storing services keyed by their service type, which implements IServiceProvider for later retrieval from the same dictionary. Using the dictionary avoids querying for the same service repeatedly. This class is the base class of XamlDesignerSerializationManager, which is the service used for ShouldSerialize method implementations in other parts of WPF.

Using this class requires referencing WPF assemblies, it is not intended for general .NET Framework XAML Services scenarios. The scenario here is for WPF internal implementation of service-intensive features during serialization, such as when processing the ShouldSerialize implementations of certain types. The practical class involved in this scenario is the derived class XamlDesignerSerializationManager.

Constructors

ServiceProviders()

Initializes a new instance of the ServiceProviders class.

Methods

AddService(Type, Object)

Adds a service to the list.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetService(Type)

Gets the service object of the specified type.

GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)

Extension Methods

GetKeyedService<T>(IServiceProvider, Object)

Get service of type T from the IServiceProvider.

GetKeyedServices(IServiceProvider, Type, Object)

Get an enumeration of services of type serviceType from the IServiceProvider.

GetKeyedServices<T>(IServiceProvider, Object)

Get an enumeration of services of type T from the IServiceProvider.

GetRequiredKeyedService(IServiceProvider, Type, Object)

Get service of type serviceType from the IServiceProvider.

GetRequiredKeyedService<T>(IServiceProvider, Object)

Get service of type T from the IServiceProvider.

CreateAsyncScope(IServiceProvider)

Creates a new AsyncServiceScope that can be used to resolve scoped services.

CreateScope(IServiceProvider)

Creates a new IServiceScope that can be used to resolve scoped services.

GetRequiredService(IServiceProvider, Type)

Get service of type serviceType from the IServiceProvider.

GetRequiredService<T>(IServiceProvider)

Get service of type T from the IServiceProvider.

GetService<T>(IServiceProvider)

Get service of type T from the IServiceProvider.

GetServices(IServiceProvider, Type)

Get an enumeration of services of type serviceType from the IServiceProvider.

GetServices<T>(IServiceProvider)

Get an enumeration of services of type T from the IServiceProvider.

GetFakeLogCollector(IServiceProvider)

Gets the object that collects log records sent to the fake logger.

GetFakeRedactionCollector(IServiceProvider)

Gets the fake redactor collector instance from the dependency injection container.

Applies to