ServiceProvider 类

通过使用托管和非托管 IServiceProvider 接口,可以提供服务的对象。

继承层次结构

System.Object
  Microsoft.VisualStudio.Data.Framework.ServiceProvider
    Microsoft.VisualStudio.Data.Framework.DataSiteableServiceProvider<T>

命名空间:  Microsoft.VisualStudio.Data.Framework
程序集:  Microsoft.VisualStudio.Data.Framework(在 Microsoft.VisualStudio.Data.Framework.dll 中)

语法

声明
<ComVisibleAttribute(True)> _
Public Class ServiceProvider _
    Implements IServiceContainer, IServiceProvider, IServiceProvider
[ComVisibleAttribute(true)]
public class ServiceProvider : IServiceContainer, 
    IServiceProvider, IServiceProvider
[ComVisibleAttribute(true)]
public ref class ServiceProvider : IServiceContainer, 
    IServiceProvider, IServiceProvider
[<ComVisibleAttribute(true)>]
type ServiceProvider =  
    class
        interface IServiceContainer
        interface IServiceProvider
        interface IServiceProvider
    end
public class ServiceProvider implements IServiceContainer, IServiceProvider, IServiceProvider

ServiceProvider 类型公开以下成员。

构造函数

  名称 说明
公共方法 ServiceProvider() 初始化托管或非托管 IServiceProvider的新实例。
公共方法 ServiceProvider(IServiceProvider) 包装通过托管 IServiceProvider 接口访问的非托管 IServiceProvider 接口。
公共方法 ServiceProvider(IServiceProvider) 初始化非托管 IServiceProvider 接口的新实例。

页首

属性

  名称 说明
受保护的属性 ParentProvider 获取父服务提供程序的当前实例。

页首

方法

  名称 说明
公共方法 AddService(Type, ServiceCreatorCallback) 向其中添加项时指定的服务到服务的内部集合。
公共方法 AddService(Type, Object) 向其中添加项时指定的服务到服务的内部集合。
公共方法 AddService(Type, ServiceCreatorCallback, Boolean) 向其中添加项时指定的服务到服务的内部集合或到父服务容器。
公共方法 AddService(Type, Object, Boolean) 向其中添加项时指定的服务添加到服务对象的集合或到父服务容器。
公共方法 Equals 确定指定的对象是否等于当前对象。 (继承自 Object。)
受保护的方法 Finalize 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法 GetHashCode 用作特定类型的哈希函数。 (继承自 Object。)
公共方法 GetService(Guid) 检索使用已指定的服务GUID的服务。
公共方法 GetService(Type) 检索具有指定类型的服务。
公共方法 GetType 获取当前实例的 Type。 (继承自 Object。)
受保护的方法 MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法 RemoveService(Type) 从内部服务集合中移除项时指定的服务
公共方法 RemoveService(Type, Boolean) 移除项时指定的服务从内部服务集合或从父服务容器。
公共方法 ToString 返回表示当前对象的字符串。 (继承自 Object。)

页首

显式接口实现

  名称 说明
显式接口实现私有方法 IServiceProvider.QueryService 执行为通过 IServiceProvider的实现中显示的服务的一个工厂。

页首

备注

说明说明

在语法块上方,选件类继承托管和非托管 IServiceProvider 接口派生。即第一个(非托管)从 IServiceProvider 接口和第二个派生(管理)从 IServiceProvider派生。

此选件类有两个用途。首先,它用于创建非托管组件或托管 IServiceProvider 接口的实现提供托管选件类。其次,它进行换行和扩展非托管组件或托管 IServiceProvider 接口的一个现有实现提供的选件类。

使用"管理友好的代码,需要在两种情况下,托管 IServiceProvider 接口来实现,对象的方式托管客户端可以使用对象进行通信。

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

请参见

参考

Microsoft.VisualStudio.Data.Framework 命名空间