Module.Initialize(IServiceProvider, ModuleInfo) 方法

定義

在衍生類別中覆寫時,初始化模組。

protected public:
 virtual void Initialize(IServiceProvider ^ serviceProvider, Microsoft::Web::Management::Server::ModuleInfo ^ moduleInfo);
protected internal virtual void Initialize (IServiceProvider serviceProvider, Microsoft.Web.Management.Server.ModuleInfo moduleInfo);
abstract member Initialize : IServiceProvider * Microsoft.Web.Management.Server.ModuleInfo -> unit
override this.Initialize : IServiceProvider * Microsoft.Web.Management.Server.ModuleInfo -> unit

參數

serviceProvider
IServiceProvider

要初始化的 IServiceProvider

moduleInfo
ModuleInfo

ModuleInfo包含初始化資料的 。

範例

下列範例示範如何覆寫 Initialize 衍生類別中的 方法。 請注意,您必須先呼叫基類方法,再執行其他處理。


internal class DemoModule : Microsoft.Web.Management.Client.Module 
{

    protected override void Initialize(
        IServiceProvider serviceProvider, ModuleInfo moduleInfo) 
    {

        base.Initialize(serviceProvider, moduleInfo);
        Trace.WriteLine(" ClientModuleTypeName : " + 
            moduleInfo.ClientModuleTypeName);
        Trace.WriteLine(" Name : " + moduleInfo.Name);
        
        // Clear the trace window.
        resetTrace();

        IControlPanel controlPanel = 
            (IControlPanel)GetService(typeof(IControlPanel));
        ModulePageInfo modPgInfo = getModulePage();

        controlPanel.RegisterPage(modPgInfo);
        controlPanel.RegisterPage(
            ControlPanelCategoryInfo.HealthAndDiagnostics, modPgInfo);

        /// The ExtensibilityManager is used to add a new icon/element 
        /// to the InetMgr UI in the Connections frame.

        IExtensibilityManager extensMgr = 
            (IExtensibilityManager)GetService(
            typeof(IExtensibilityManager));
        System.Diagnostics.Debug.Assert(extensMgr != null);

        extensMgr.RegisterExtension(typeof(HierarchyProvider), 
            new DemoHierProvidr(serviceProvider));

        ICollection extenCol = 
            extensMgr.GetExtensions(typeof(HierarchyProvider));
        Trace.WriteLine(
            "extensMgr collection cnt = " + extenCol.Count.ToString());
        foreach (HierarchyProvider col in extenCol) 
        {
            Trace.WriteLine(col.ToString());
        }
        
        traceModInfo(modPgInfo);
    }

給繼承者的注意事項

您必須在衍生類別中覆寫這個方法,並在執行其他初始化作業之前呼叫基類方法。

適用於