示例#1
0
            public SolutionReader(Solution parent)
            {
                _parent = parent;

                _read = normalRead;
            }
示例#2
0
 private void InitializeFromSolution(CsProjFile projFile, Solution solution)
 {
     var tfsSourceControl = solution.Sections.FirstOrDefault(section => section.SectionName.Equals("TeamFoundationVersionControl"));
     if (tfsSourceControl != null)
     {
         this.InitializeTfsSourceControlSettings(projFile, solution, tfsSourceControl);
     }
 }
示例#3
0
        private void InitializeTfsSourceControlSettings(CsProjFile projFile, Solution solution, GlobalSection tfsSourceControl)
        {
            var projUnique = tfsSourceControl.Properties.FirstOrDefault(item => item.EndsWith(Path.GetFileName(projFile.FileName)));
            if (projUnique == null)
            {
                return;
            }

            int index =
                Convert.ToInt32(projUnique.Substring("SccProjectUniqueName".Length,
                    projUnique.IndexOf('=') - "SccProjectUniqueName".Length).Trim());

            projFile.SourceControlInformation = new SourceControlInformation(
                tfsSourceControl.Properties.First(item => item.StartsWith("SccProjectUniqueName" + index)).Split('=')[1].Trim(),
                tfsSourceControl.Properties.First(item => item.StartsWith("SccProjectName" + index)).Split('=')[1].Trim(),
                tfsSourceControl.Properties.First(item => item.StartsWith("SccLocalPath" + index)).Split('=')[1].Trim());
        }
示例#4
0
 private static string CalcSolutionPath(Solution solution, Guid projGuid, Dictionary<Guid, Guid> childToParent, string path)
 {
     if (!childToParent.ContainsKey(projGuid))
         return path;
     var parentGuid = childToParent[projGuid];
     var parent = solution.Projects.FirstOrDefault(p => p.ProjectGuid == parentGuid);
     if (parent == null)
         return path;
     return CalcSolutionPath(solution, parent.ProjectGuid, childToParent, parent.ProjectName + "\\" + path);
 }