public string UpgradeModule(string Version)
        {
            try
            {
                switch (Version)
                {
                case "01.00.00":
                    DnnEventLog.InstallLogTypes();
                    break;

                case "01.00.07":
                    AddAdminPageToAllPortals();
                    UninstallObsoletePackages();
                    break;

                case "01.05.00":
                    EnsureDefaultZones();
                    break;

                case "01.09.00":
                    MigrateFedExRateSetting();
                    break;

                case "01.10.00":
                    MigrateAvalaraTaxProviderSetting();
                    break;

                case "02.00.00":
                    CreateAbandonedCartScheduler();
                    UpdateRecurringOrdersScheduler();
                    UpdateConfigFile();
                    break;

                case "03.00.01":
                    RevertHotcakesCloudConfig();
                    break;

                case "03.03.00":
                    DeleteHostPage();
                    UninstallControlPanel();
                    CreateTempFileScheduledJob();
                    UpdateEmailTemplateBranding();
                    break;

                default:
                    break;
                }

                // This code have to be executed only once and not depending on version
                if (!IsGenericCodeExecuted)
                {
                    // Increment CRM version that is used to render resources
                    IncrementCrmVersion();

                    // Have to be run once to fix categorization for installs after 1.00.08
                    CategorizeModules();

                    InstallApplication();

                    IsGenericCodeExecuted = true;
                }

                return("Success");
            }
            catch (Exception ex)
            {
                LogError(ex.Message, ex);
                Exceptions.LogException(ex);

                return("Failed");
            }
        }
        public string UpgradeModule(string Version)
        {
            try
            {
                switch (Version)
                {
                case "01.00.00":
                    DnnEventLog.InstallLogTypes();
                    AddHostPage();
                    break;

                case "01.00.07":
                    AddAdminPageToAllPortals();
                    UninstallObsoletePackages();
                    break;

                case "01.05.00":
                    EnsureDefaultZones();
                    break;

                case "01.07.00":
                    MigrateOldPromotions();
                    break;

                case "01.09.00":
                    MigrateFedExRateSetting();
                    break;

                case "01.10.00":
                    MigrateAvalaraTaxProviderSetting();
                    break;

                case "02.00.00":
                    CreateAbandonedCartScheduler();
                    UpdateRecurringOrdersScheduler();
                    UpdateConfigFile();
                    break;

                case "03.00.01":
                    RevertHotcakesCloudConfig();
                    break;

                default:
                    break;
                }

                // This code have to be executed only once and not depending on version
                if (!IsGenericCodeExecuted)
                {
                    // Copy System.Web.Mvc if it is not already present in bin folder
                    CopyMvcLibrary();

                    // Increment CRM version that is used to render resources
                    IncrementCrmVersion();

                    // Have to be run once to fix categorization for installs after 1.00.08
                    CategorizeModules();

                    InstallApplication();

                    IsGenericCodeExecuted = true;
                }

                return("Success");
            }
            catch (Exception ex)
            {
                Exceptions.LogException(ex);

                return("Failed");
            }
        }