示例#1
0
 private void RestoreAll(IEnumerable <Project> projects, ConverterUpdateViewModel model)
 {
     foreach (var project in projects)
     {
         _restorer.RestorePackages(project);
     }
 }
        public static void RestorePackageApi()
        {
            EnvDTE.DTE         dte      = ServiceLocator.GetInstance <EnvDTE.DTE>();
            IVsPackageRestorer restorer = ServiceLocator.GetInstance <IVsPackageRestorer>();

            foreach (EnvDTE.Project project in dte.Solution.Projects)
            {
                restorer.RestorePackages(project);
                return;
            }
        }
示例#3
0
        private IDictionary <string, IEnumerable <PackageConfigEntry> > RemoveAndCachePackages(IEnumerable <KeyValuePair <Project, ProjectItem> > items, ConverterUpdateViewModel model, CancellationToken token)
        {
            var installedPackages = new Dictionary <string, IEnumerable <PackageConfigEntry> >(StringComparer.OrdinalIgnoreCase);

            foreach (var item in items)
            {
                token.ThrowIfCancellationRequested();

                var project = item.Key;
                var config  = item.Value;

                model.Status = $"Removing package.config: {project.Name}";

                var packages = PackageConfigEntry.ParseFile(config.FileNames[0]);

                if (packages.Any())
                {
                    installedPackages.Add(project.FullName, packages);
                    _restorer.RestorePackages(project);

                    if (!RemovePackages(project, packages.Select(p => p.Id), token))
                    {
                        // Add warning that forcing deletion of package.config
                        config.Delete();
                    }
                }
                else
                {
                    config.Delete();
                }

                project.Save();

                model.Count++;
            }

            return(installedPackages);
        }
 public void RestorePackages(Project project)
 {
     _PkgRestorer.RestorePackages(project);
 }