在 nuget 包卸载时从 Umbraco 7 Backoffice 中删除选项卡

Remove tab from Umbraco 7 Backoffice on nuget package uninstall

我的 Umbraco 插件向 Umbraco 7 后台的开发人员部分添加了一个选项卡,我需要在卸载相关的 nuget 包时删除此选项卡。

有人知道如何做到这一点吗?

PS.: 对于作为本地包安装,我有一个应用程序事件处理程序来添加和删除此选项卡,正如您从下面的代码中看到的那样:

    /// <summary>
    /// Applications the started.
    /// </summary>
    /// <param name="umbracoApplication">The umbraco application.</param>
    /// <param name="applicationContext">The application context.</param>
    protected override void ApplicationStarted(UmbracoApplicationBase umbracoApplication, ApplicationContext applicationContext)
    {
        // Install
        DashboardHelper.EnsureTab("StartupDeveloperDashboardSection", "CleanUp Manager", "/App_Plugins/RB.Umbraco.CleanUpManager/Index.html");

        // Uninstall
        InstalledPackage.BeforeDelete += delegate
        {
            DashboardHelper.RemoveTab("StartupDeveloperDashboardSection", "CleanUp Manager");
        };
    }

Bu 我在通过 nuget 卸载它时需要做同样的事情。有什么想法吗?

在此先感谢您的帮助。

设置卸载。ps1 脚本在卸载软件包时为您执行删除。

Nuget 文档参考在这里:

http://docs.nuget.org/Create/Creating-and-Publishing-a-Package#automatically-running-powershell-scripts-during-package-installation-and-removal

不过有一些注意事项 - 如果 Nuget 包被 project.json 引用,那么脚本将不会是 运行.