ServiceProvider Class

Provides an object that can proffer services using both the managed and unmanaged IServiceProvider interfaces.

Namespace:  Microsoft.VisualStudio.Data
Assembly:  Microsoft.VisualStudio.Data (in Microsoft.VisualStudio.Data.dll)

Syntax

<ComVisibleAttribute(True)> _
Public Class ServiceProvider _
    Implements IServiceProvider, IServiceProvider

Dim instance As ServiceProvider
[ComVisibleAttribute(true)]
public class ServiceProvider : IServiceProvider, 
    IServiceProvider
[ComVisibleAttribute(true)]
public ref class ServiceProvider : IServiceProvider, 
    IServiceProvider
public class ServiceProvider implements IServiceProvider, IServiceProvider

Remarks

Notes

In the syntax block above, the class inheritance derives from both the managed and the unmanaged IServiceProvider interfaces. That is, the first (unmanaged) is IServiceProvider interface and the second (managed) is IServiceProvider.

This class serves two purposes. First, it provides a managed wrapper around the unmanaged IServiceProvider interface. Second, it provides a managed base class for implementing the unmanaged IServiceProvider interface.

For both cases, the managed IServiceProvider interface is also implemented, so managed clients of the object can communicate with the object using managed-friendly code.

Inheritance Hierarchy

System.Object
  Microsoft.VisualStudio.Data.ServiceProvider
    Microsoft.VisualStudio.Data.ServiceProviderWithSite
    Microsoft.VisualStudio.Data.DataConnection

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

ServiceProvider Members

Microsoft.VisualStudio.Data Namespace