ServiceProvider クラス
マネージ コードと 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() | マネージまたはアンマネージの 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 のアンマネージ インターフェイスの両方から取得します。つまり、1 番 IServiceProvider インターフェイス、および 2 ~ IServiceProvider (アンマネージ) (マネージ) を取得します。
このクラスは 2 種類の目的に使用されます。 まず、アンマネージの実装を作成するためにマネージ クラスを提供したり、IServiceProvider のインターフェイスを管理します。 第 2 に、アンマネージの既存の実装をラップし、拡張するマネージ クラスを提供したり、IServiceProvider のインターフェイスを管理します。
両方の場合は、マネージ IServiceProvider のインターフェイスも実装されます。そのため、オブジェクトのマネージ クライアントはオブジェクトとマネージに適したコードを使用して通信できます。
スレッド セーフ
この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。