Upgrading to Evoq 9.6.x breaks Persona Bar menus

Overview

When upgrading from Evoq 9.3.x or 9.4.x to versions 9.6.1 or 9.6.25 or newer, the disappearance of the edit bar is a known issue related to the Persona Bar menu configuration. This issue often arises due to incorrect identifiers or configurations in the PersonaBarMenu table within the database after the upgrade due to which you might have trouble accessing the Users, Recycle Bin, Sites, Setting, and About Persona Bar menus as they will not load any content. 

 

Prerequisites

  • You are upgrading to Evoq 9.6.x from Evoq 9.3.x or 9.4.x.
  • Access to the SQL Server and IIS.

 

Solution

There is a workaround that will fix this permanently for the Users, Recycle Bin, Sites, Settings, and About Menus in environments that have been affected by the upgrade.

The complete fix to fix the menus for a standard upgrade process will be resolved in a future release.

The workaround is to update the controllers directly in the DB.

  1. Go to SQL Server Management Studio and execute the below query into the DNN database. 
    As a general recommendation, always backup your database before running DELETE, UPDATE, or INSERT queries.
  2. UPDATE PersonaBarMenu SET Controller = CASE
    WHEN Identifier='Dnn.AdminLogs' THEN 'Dnn.PersonaBar.AdminLogs.MenuControllers.AdminMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.ConfigConsole' THEN 'Dnn.PersonaBar.ConfigConsole.MenuControllers.HostMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.CssEditor' THEN 'Dnn.PersonaBar.CssEditor.MenuControllers.AdminMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.Extensions' THEN 'Dnn.PersonaBar.Extensions.MenuControllers.ExtensionMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.Pages' THEN 'Dnn.PersonaBar.Pages.MenuControllers.PagesMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.Security' THEN 'Dnn.PersonaBar.Security.MenuControllers.SecurityMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.Seo' THEN 'Dnn.PersonaBar.Seo.Components.ExtensionMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.Servers' THEN 'Dnn.PersonaBar.Servers.MenuControllers.ServersMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.SiteImportExport' THEN 'Dnn.PersonaBar.SiteImportExport.MenuControllers.AdminMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.SiteGroups' THEN 'Dnn.PersonaBar.Sites.MenuControllers.AdminMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.SqlConsole' THEN 'Dnn.PersonaBar.SqlConsole.MenuControllers.HostMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.TaskScheduler' THEN 'Dnn.PersonaBar.TaskScheduler.MenuControllers.HostMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Dnn.Themes' THEN 'Dnn.PersonaBar.Themes.MenuControllers.ThemeMenuController, Dnn.PersonaBar.Extensions'
    WHEN Identifier='Edit' THEN 'Dnn.PersonaBar.UI.MenuControllers.EditMenuController, Dnn.PersonaBar.UI'
    WHEN Identifier='Evoq.PageAnalytics' THEN 'Evoq.Analytics.Components.Controllers.MenuController, Evoq.Analytics'
    WHEN Identifier='Evoq.SiteAnalytics' THEN 'Evoq.Analytics.Components.Controllers.MenuController, Evoq.Analytics'
    WHEN Identifier='Evoq.Assets' THEN 'Evoq.PersonaBar.Assets.MenuControllers.AssetsMenuController, Evoq.PersonaBar.Assets'
    WHEN Identifier='Evoq.Forms' THEN 'Evoq.PersonaBar.Forms.Components.ExtensionMenuController, Evoq.PersonaBar.Forms'
    WHEN Identifier='Dnn.Licensing' THEN 'Evoq.PersonaBar.Licensing.MenuControllers.LicensingController, Evoq.PersonaBar.Licensing'
    WHEN Identifier='Evoq.Microservices' THEN 'Evoq.PersonaBar.Microservices.MenuController.MicroservicesMenuController, Evoq.PersonaBar.Microservices'
    WHEN Identifier='Dnn.Recyclebin' THEN 'Evoq.PersonaBar.Recyclebin.MenuControllers.RecyclebinMenuController, Evoq.PersonaBar.Recyclebin'
    WHEN Identifier='Dnn.Sites' THEN 'Evoq.PersonaBar.Sites.MenuControllers.SiteMenuController, Evoq.PersonaBar.Sites'
    WHEN Identifier='Dnn.SiteSettings' THEN 'Evoq.PersonaBar.SiteSettings.MenuControllers.SiteSettingsMenuController, Evoq.PersonaBar.SiteSettings'
    WHEN Identifier='Evoq.StructuredContent' THEN 'Evoq.PersonaBar.StructuredContent.Components.ExtensionMenuController, Evoq.PersonaBar.StructuredContent'
    WHEN Identifier='Dnn.Users' THEN 'Evoq.PersonaBar.Users.MenuControllers.UsersMenuController, Evoq.PersonaBar.Users'
    WHEN Identifier='Dnn.Prompt' THEN ''
    WHEN Identifier='Content' THEN ''
    WHEN Identifier='Manage' THEN ''
    WHEN Identifier='Settings' THEN ''
    ELSE Controller END
  3. Go to Internet Information Systems (IIS) and expand your server > Application Pools > Click on your application pool > Click Recycle.
    2020-10-16_13_06_30-Internet_Information_Services__IIS__Manager.png

Comments

0 comments

Please sign in to leave a comment.