英語で読む

次の方法で共有


ServiceCreatorCallback 代理人

定義

要求に応じてサービスのインスタンスを作成できるコールバック機構を提供します。

C#
public delegate object ServiceCreatorCallback(IServiceContainer container, Type serviceType);
C#
public delegate object? ServiceCreatorCallback(IServiceContainer container, Type serviceType);
C#
[System.Runtime.InteropServices.ComVisible(true)]
public delegate object ServiceCreatorCallback(IServiceContainer container, Type serviceType);

パラメーター

container
IServiceContainer

サービスの作成を要求したサービス コンテナー。

serviceType
Type

作成するサービスの型。

戻り値

serviceType によって指定されたサービス。サービスが作成されなかった場合は null

属性

次のコード例は、コールバック関数を使用してサービスを発行する方法を示しています。

C#
// The following code shows how to publish a service using a callback function.

// Creates a service creator callback.
ServiceCreatorCallback callback1 = 
new ServiceCreatorCallback(myCallBackMethod);

// Adds the service using its type and the service creator callback.
serviceContainer.AddService(typeof(myService), callback1);

注釈

ServiceCreatorCallback には、デザイナーの読み込み時にすぐに作成されるサービスではなく、必要に応じて作成するように要求できるサービスを発行するメカニズムが用意されています。 サービスが不可欠ではなく、使用できない可能性がある場合は、コールバック関数を使用できます。 を使用 ServiceCreatorCallback して発行されたサービスでは、要求および作成されていない場合、追加のリソースは使用されません。 コールバック関数を使用してサービスを発行するには、 の メソッドに AddServiceIServiceContainer渡しますServiceCreatorCallback

拡張メソッド

GetMethodInfo(Delegate)

指定したデリゲートによって表されるメソッドを表すオブジェクトを取得します。

適用対象

製品 バージョン
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

こちらもご覧ください