Example #1
0
 private static void ParseLine(string line, VSSolution solution)
 {
     if (line.StartsWith("Project("))
     {
         ParseProject(line, solution);
     }
 }
Example #2
0
 private static void ParseLine(string line, VSSolution solution)
 {
     if(line.StartsWith("Project("))
     {
         ParseProject(line, solution);
     }
 }
Example #3
0
        private static void ParseProject(string line, VSSolution solution)
        {
            var splitBySpaces = line.Split('"');

            var projectReference = splitBySpaces[5];

            solution.ReferencedProjects.Add(projectReference);
        }
Example #4
0
        private static void ParseProject(string line, VSSolution solution)
        {
            var splitBySpaces = line.Split('"');

            var projectReference = splitBySpaces[5];

            solution.ReferencedProjects.Add(projectReference);

        }
Example #5
0
        public static VSSolution FromFile(FilePath fileName)
        {
            VSSolution toReturn = new VSSolution();

            toReturn.FullFileName = fileName.FullPath;

            var lines = System.IO.File.ReadAllLines(fileName.FullPath);

            foreach (var line in lines)
            {
                ParseLine(line, toReturn);
            }

            return(toReturn);
        }
Example #6
0
        public static VSSolution FromFile(string fileName)
        {
            VSSolution toReturn = new VSSolution();

            toReturn.FullFileName = fileName;

            var lines = System.IO.File.ReadAllLines(fileName);

            foreach(var line in lines)
            {
                ParseLine(line, toReturn);
            }

            return toReturn;
        }
        private void AutomaticallyUpdateProjects(VSSolution sourceSolution, VSSolution destinationSolution)
        {
            ReferenceCopierViewModel viewmodel = new ReferenceCopierViewModel();

            string sourceDirectory = FileManager.GetDirectory(sourceSolution.FullFileName);
            string destinationDirectory = FileManager.GetDirectory(destinationSolution.FullFileName);

            string strippedDestinationSolutionName = FileManager.RemovePath(destinationSolution.FullFileName);

            foreach (var sourceProject in sourceSolution.ReferencedProjects)
            {


                var strippedSource = FileManager.RemovePath(sourceProject);

                var found = destinationSolution.ReferencedProjects.FirstOrDefault(item => 
                    FileManager.RemovePath(item) == strippedSource);



                if(found != null)
                {

                    ViewModel.FromFile = FileManager.RemoveDotDotSlash(sourceDirectory + sourceProject);
                    ViewModel.ToFile = FileManager.RemoveDotDotSlash( destinationDirectory + found);

                    ViewModel.PerformCopy(showPopup:false);

                    PluginManager.ReceiveOutput($"Copied references for project {strippedSource} in {strippedDestinationSolutionName}.");

                }
                else
                {
                    PluginManager.ReceiveOutput($"Skipping project {strippedSource} because a matching project was not found in {strippedDestinationSolutionName}");
                }
            }
        }