private void step2CodeActivity_Validate_ExecuteCode(object sender, EventArgs e) { PackageElementProviderInstalledPackageItemEntityToken castedEntityToken = (PackageElementProviderInstalledPackageItemEntityToken)this.EntityToken; PackageManagerUninstallProcess packageManagerUninstallProcess = PackageManager.Uninstall(castedEntityToken.PackageId); this.Bindings.Add("PackageManagerUninstallProcess", packageManagerUninstallProcess); this.Bindings.Add("FlushOnCompletion", packageManagerUninstallProcess.FlushOnCompletion); this.Bindings.Add("ReloadConsoleOnCompletion", packageManagerUninstallProcess.ReloadConsoleOnCompletion); if (packageManagerUninstallProcess.PreUninstallValidationResult.Count > 0) { this.UpdateBinding("Errors", WorkflowHelper.ValidationResultToBinding(packageManagerUninstallProcess.PreUninstallValidationResult)); } else { List <PackageFragmentValidationResult> validationResult = packageManagerUninstallProcess.Validate(); if (validationResult.Count > 0) { this.UpdateBinding("Errors", WorkflowHelper.ValidationResultToBinding(validationResult)); } } }
/// <summary> /// </summary> /// <param name="packageId"></param> /// <param name="groupName"></param> /// <returns></returns> public virtual PackageElementProviderInstalledPackageItemEntityToken GetInstalledPackageEntityToken(Guid packageId, string groupName) { PackageElementProviderAvailablePackagesItemEntityToken castedEntityToken = new PackageElementProviderAvailablePackagesItemEntityToken(packageId.ToString(), groupName); InstalledPackageInformation installedPackage = PackageManager.GetInstalledPackages().FirstOrDefault(f => f.Id == castedEntityToken.PackageId); PackageElementProviderInstalledPackageItemEntityToken installedPackageEntityToken = new PackageElementProviderInstalledPackageItemEntityToken( installedPackage.Id, installedPackage.GroupName, installedPackage.IsLocalInstalled, installedPackage.CanBeUninstalled); return(installedPackageEntityToken); }