共用方式為


ServiceProvider 類別

提供使用 Managed 和 Unmanaged IServiceProvider 介面,可提供服務的物件。

繼承階層架構

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

命名空間:  Microsoft.VisualStudio.Data
組件:  Microsoft.VisualStudio.Data (在 Microsoft.VisualStudio.Data.dll 中)

語法

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

ServiceProvider 類型會公開下列成員。

建構函式

  名稱 描述
受保護的方法 ServiceProvider() 將透過 Unmanaged IServiceProvider 介面可存取的 Managed 服務提供者的IServiceProvider(、) 建構函式的類別。
公用方法 ServiceProvider(IServiceProvider) 封裝透過 Managed IServiceProvider 介面可存取的 Unmanaged 介面 IServiceProvider 類別建構函式。

回頁首

屬性

  名稱 描述
受保護的屬性 ServiceTypes 擷取用於將服務型別清單轉換為 Unmanaged QueryService 方法呼叫之後,服務 GUID 指定,進入 Managed IServiceProvider.GetService 方法呼叫,指定 Managed 型別。

回頁首

方法

  名稱 描述
公用方法 Equals 判斷指定的物件是否等於目前的物件。 (繼承自 Object)。
受保護的方法 Finalize 在記憶體回收開始前,允許物件嘗試釋放資源,並執行其他清除作業。 (繼承自 Object)。
公用方法 GetHashCode 做為預設雜湊函式。 (繼承自 Object)。
公用方法 GetService(Guid) 擷取具有一個項目所指定的服務 GUID 的服務。
公用方法 GetService(Type) 擷取指定之型別的服務。
受保護的方法 GetServiceImpl(Guid) 提供擷取服務提供實作以特定的 GUID。
受保護的方法 GetServiceImpl(Type) 提供擷取特定型別之服務的實作。
公用方法 GetType 取得目前實例 Type 的屬性。 (繼承自 Object)。
受保護的方法 MemberwiseClone 建立目前 Object 的淺層複製 (Shallow Copy) 。 (繼承自 Object)。
公用方法 ToString 傳回代表目前物件的字串。 (繼承自 Object)。

回頁首

明確介面實作

  名稱 描述
明確介面實作私用方法 IServiceProvider.QueryService 執行做為傳遞的 IServiceProvider 實作公開服務的 Factory。

回頁首

備註

注意事項注意事項

在上述語法區塊,類別繼承自 Managed 和 Unmanaged IServiceProvider 介面衍生。也就是第一個 (Unmanaged) 是 IServiceProvider 介面和第二個 (已處理) 是 IServiceProvider

這個類別有兩個用途。 首先,它會在未處理的 IServiceProvider 周圍提供介面的 Managed 包裝函式。 接著,它會實作 Unmanaged 介面的 Managed IServiceProvider 提供基底類別。

對於這兩種情況下, IServiceProvider Managed 介面也會實作,使用 Managed 易記的程式碼,因此,物件的 Managed 用戶端可以使用物件進行通訊。

執行緒安全

這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。不保證任何執行個體成員是安全執行緒。

請參閱

參考

Microsoft.VisualStudio.Data 命名空間