private static int RunAddReference(AddReferenceOptions options) { var solution = LoadSolution(options); var project = FindProject(solution, options.Project) as CPlusPlusProject; if (project != null) { var currentReference = project.References.Where(r => r.Name == options.Name).FirstOrDefault(); if (currentReference != null) { project.UnloadedReferences[project.References.IndexOf(currentReference)] = new Reference { Name = options.Name, GitUrl = options.GitUrl, Revision = options.Revision }; Console.WriteLine("Reference successfully updated."); } else { var add = true; if (string.IsNullOrEmpty(options.GitUrl)) { var reference = FindProject(solution, options.Name); if (reference == null) { add = false; } } if (add) { project.UnloadedReferences.Add(new Reference { Name = options.Name, GitUrl = options.GitUrl, Revision = options.Revision }); Console.WriteLine("Reference added successfully."); } else { Console.WriteLine("Local reference does not exist, try creating the project first."); } } project.Save(); } return(1); }
private static int RunAddReference(AddReferenceOptions options) { var solution = LoadSolution(options); var project = FindProject(solution, options.Project) as CPlusPlusProject; if (project != null) { var currentReference = project.References.Where(r => r.Name == options.Name).FirstOrDefault(); if (currentReference != null) { project.UnloadedReferences[project.References.IndexOf(currentReference)] = new Reference { Name = options.Name, GitUrl = options.GitUrl, Revision = options.Revision }; Console.WriteLine("Reference successfully updated."); } else { var add = true; if (string.IsNullOrEmpty(options.GitUrl)) { var reference = FindProject(solution, options.Name); if (reference == null) { add = false; } } if (add) { project.UnloadedReferences.Add(new Reference { Name = options.Name, GitUrl = options.GitUrl, Revision = options.Revision }); Console.WriteLine("Reference added successfully."); } else { Console.WriteLine("Local reference does not exist, try creating the project first."); } } project.Save(); } return 1; }