次の方法で共有


ServiceProvider クラス

マネージ コードと IServiceProvider のアンマネージ インターフェイスの両方を使用してサービスを提供できるオブジェクトを提供します。

継承階層

System.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() IServiceProvider のアンマネージ インターフェイスからアクセスできるマネージ サービス プロバイダー (IServiceProvider) のコンストラクターを使用します。
パブリック メソッド ServiceProvider(IServiceProvider) マネージ IServiceProvider のインターフェイスからアクセスできる IServiceProvider のアンマネージ インターフェイスをラップするためのクラスのコンストラクター。

このページのトップへ

プロパティ

  名前 説明
プロテクト プロパティ ServiceTypes サービスの GUID がマネージ型が指定されるマネージ IServiceProvider.GetService のメソッド呼び出しに、指定されたアンマネージの QueryService のメソッド呼び出しの変換に使用されるサービスの種類の一覧を取得します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド Equals 指定のオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (Object から継承されます。)
プロテクト メソッド Finalize オブジェクトがガベージ コレクションにより収集される前に、そのオブジェクトがリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
パブリック メソッド GetHashCode 特定の型のハッシュ関数として機能します。 (Object から継承されます。)
パブリック メソッド GetService(Guid) 指定したサービスの GUID でサービスを取得します。
パブリック メソッド GetService(Type) 指定した型のサービスを取得します。
プロテクト メソッド GetServiceImpl(Guid) 特定の GUID をサービスを取得するために実装を提供します。
プロテクト メソッド GetServiceImpl(Type) 特定の型のサービスを取得する実装を提供します。
パブリック メソッド GetType 現在のインスタンスの Type を取得します。 (Object から継承されます。)
プロテクト メソッド MemberwiseClone 現在の Object の簡易コピーを作成します。 (Object から継承されます。)
パブリック メソッド ToString 現在のオブジェクトを表す文字列を返します。 (Object から継承されます。)

このページのトップへ

明示的インターフェイスの実装

  名前 説明
明示的なインターフェイス実装プライベート メソッド IServiceProvider.QueryService IServiceProvider の実装によって公開されるサービスのファクトリとして実行します。

このページのトップへ

解説

[!メモ]

上記の構文ブロックでは、クラスの継承は、マネージ コードと IServiceProvider のアンマネージ インターフェイスの両方から取得します。つまり、1 番目 (アンマネージ) IServiceProvider のインターフェイスと 2 番目 (マネージ) です IServiceProviderです。

このクラスは 2 種類の目的に使用されます。まず、IServiceProvider のアンマネージ インターフェイスの周囲にマネージ ラッパーを提供します。第 2 に、IServiceProvider のアンマネージ インターフェイスを実装するマネージ基本クラスを提供します。

両方の場合は、マネージ IServiceProvider のインターフェイスも実装されます。そのため、オブジェクトのマネージ クライアントは、マネージに適したコードを使用してオブジェクトと通信できます。

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

参照

関連項目

Microsoft.VisualStudio.Data 名前空間