public async Task <bool> UninstallPackageAsync(string packageName) { var package = await m_NuGetPackageManager.GetLatestPackageIdentityAsync(packageName); if (package == null) { return(false); } return(await m_NuGetPackageManager.RemoveAsync(package)); }
protected virtual async Task <NuGetInstallResult> InstallOrUpdateAsync(string packageId, string version = null, bool isPreRelease = false, bool isUpdate = false) { PackageIdentity previousVersion = await nugetPackageManager.GetLatestPackageIdentityAsync(packageId); if (isUpdate && previousVersion == null) { return(new NuGetInstallResult(NuGetInstallCode.PackageOrVersionNotFound)); } var package = (await nugetPackageManager.QueryPackageExactAsync(packageId, version, isPreRelease)); if (package == null) { return(new NuGetInstallResult(NuGetInstallCode.PackageOrVersionNotFound)); } if (version == null) { version = package.Identity.Version.OriginalVersion; // set to latest version } var packageIdentity = new PackageIdentity(package.Identity.Id, new NuGetVersion(version)); var result = await nugetPackageManager.InstallAsync(packageIdentity, isPreRelease); if (result.Code != NuGetInstallCode.Success) { return(result); } if (isUpdate) { await nugetPackageManager.RemoveAsync(previousVersion); } return(result); }