ServiceProvider 類別
提供使用 Managed 和 Unmanaged IServiceProvider 介面,可提供服務的物件。
繼承階層架構
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() | 初始化 Managed 或 Unmanaged IServiceProvider的新執行個體。 |
![]() |
ServiceProvider(IServiceProvider) | 透過 Managed 包裝 IServiceProvider 介面可存取的 Unmanaged IServiceProvider 介面。 |
![]() |
ServiceProvider(IServiceProvider) | 初始化一個 Unmanaged 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 的淺層複製 (Shallow Copy) 。 (繼承自 Object)。 |
![]() |
RemoveService(Type) | 從內部服務集合移除指定的服務 |
![]() |
RemoveService(Type, Boolean) | 移除指定的服務從內部服務集合或父服務容器。 |
![]() |
ToString | 傳回代表目前物件的字串。 (繼承自 Object)。 |
回頁首
明確介面實作
名稱 | 描述 | |
---|---|---|
![]() ![]() |
IServiceProvider.QueryService | 執行可藉由 IServiceProvider的實作公開服務的 Factory。 |
回頁首
備註
![]() |
---|
在上述語法區塊,類別繼承自 Managed 和 Unmanaged IServiceProvider 介面衍生。也就是第一個 (Unmanaged) 從 IServiceProvider 介面和第二個衍生 (已處理) IServiceProvider從衍生。 |
這個類別有兩個用途。 首先,它會建立實作的 Managed 類別 Unmanaged 或 Managed IServiceProvider 介面。 接著,它會封裝和擴充現有實作的 Managed 類別 Unmanaged 或 Managed IServiceProvider 介面。
對於這兩種情況下, IServiceProvider Managed 介面也會實作,您可以使用易記的 Managed 程式碼,因此,物件的 Managed 用戶端可以使用物件進行通訊。
執行緒安全
這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。不保證任何執行個體成員是安全執行緒。