ServiceCreatorCallback 代理人

定義

提供回調機制,可按需建立服務實例。

public delegate System::Object ^ ServiceCreatorCallback(IServiceContainer ^ container, Type ^ serviceType);
[System.Runtime.InteropServices.ComVisible(true)]
public delegate object ServiceCreatorCallback(IServiceContainer container, Type serviceType);
public delegate object ServiceCreatorCallback(IServiceContainer container, Type serviceType);
[<System.Runtime.InteropServices.ComVisible(true)>]
type ServiceCreatorCallback = delegate of IServiceContainer * Type -> obj
type ServiceCreatorCallback = delegate of IServiceContainer * Type -> obj
Public Delegate Function ServiceCreatorCallback(container As IServiceContainer, serviceType As Type) As Object 

參數

container
IServiceContainer

請求建立該服務的服務容器。

serviceType
Type

該創造的服務類型。

傳回值

服務由 serviceType指定,或 null 若服務無法建立。

屬性

範例

以下程式碼範例展示了如何使用回調函式發佈服務。

// The following code shows how to publish a service using a callback function.
// Creates a service creator callback.
ServiceCreatorCallback^ callback1 =
   gcnew ServiceCreatorCallback( this, &Sample::myCallBackMethod );

// Adds the service using its type and the service creator callback.
serviceContainer->AddService( myService::typeid, callback1 );
// 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);
' The following code shows how to publish a service using a callback function.

' Creates a service creator callback.
Dim callback1 As New ServiceCreatorCallback _
(AddressOf myCallBackMethod)
       
' Adds the service using its type and the service creator.
serviceContainer.AddService(GetType(myService), callback1)

備註

ServiceCreatorCallback 提供一種機制,讓你在需要時可以請求建立服務,而不是在設計器載入時立即建立服務。 如果服務非必要且可能無法使用,可以使用回撥功能。 如果沒有被請求並建立,透過 所 ServiceCreatorCallback 發布的服務就不會使用那麼多額外資源。 若要使用回調函式發佈服務,請將 a ServiceCreatorCallback 傳入 AddServiceIServiceContainer

擴充方法

名稱 Description
GetMethodInfo(Delegate)

取得一個代表指定代理所代表方法的物件。

適用於

另請參閱