@namespace Oqtane.Modules.Admin.Upgrade @inherits ModuleBase @inject NavigationManager NavigationManager @inject IFileService FileService @inject IPackageService PackageService @inject IInstallationService InstallationService @if (_package != null) { @if (_upgradeavailable) { @("Framework") @_package.Version } else { }
} @code { private Package _package; private bool _upgradeavailable = false; public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Host; protected override async Task OnInitializedAsync() { try { List packages = await PackageService.GetPackagesAsync("framework"); if (packages != null) { _package = packages.FirstOrDefault(); if (_package != null) { _upgradeavailable = (Version.Parse(_package.Version).CompareTo(Version.Parse(Constants.Version)) > 0); } else { _package = new Package { Name = Constants.PackageId, Version = Constants.Version }; } } } catch { // can be caused by no network connection } } private async Task Upgrade() { try { await InstallationService.Upgrade(); NavigationManager.NavigateTo(NavigateUrl()); } catch (Exception ex) { await logger.LogError(ex, "Error Executing Upgrade {Error}", ex.Message); AddModuleMessage("Error Executing Upgrade", MessageType.Error); } } private async Task Download(string packageid, string version) { try { await PackageService.DownloadPackageAsync(packageid, version, "Framework"); await InstallationService.Upgrade(); NavigationManager.NavigateTo(NavigateUrl()); } catch (Exception ex) { await logger.LogError(ex, "Error Downloading Framework {Error}", ex.Message); AddModuleMessage("Error Downloading Framework", MessageType.Error); } } }