/// <summary> /// Gets package reference file(s) used by the project, or subprojects if the project is a solution folder, /// and adds the files into list _projectPackageReferenceFiles. /// </summary> /// <param name="project">the project to inspect.</param> private void GetPackageReferenceFiles(Project project) { if (project == null) { return; } // Ignore "Miscellaneous Files" project if (VsConstants.VsProjectKindMisc.Equals(project.Kind, StringComparison.OrdinalIgnoreCase)) { return; } if (VsConstants.VsProjectItemKindSolutionFolder.Equals(project.Kind, StringComparison.OrdinalIgnoreCase)) { foreach (ProjectItem item in project.ProjectItems) { var nestedProject = item.SubProject; GetPackageReferenceFiles(nestedProject); } } else { Tuple <string, string> packageReferenceFiles = VsUtility.GetPackageReferenceFileFullPaths(project); if (File.Exists(packageReferenceFiles.Item1)) { _projectPackageReferenceFiles.Add(new ProjectPackageReferenceFile(project, packageReferenceFiles.Item1)); } else if (File.Exists(packageReferenceFiles.Item2)) { _projectPackageReferenceFiles.Add(new ProjectPackageReferenceFile(project, packageReferenceFiles.Item2)); } } }
private static PackageReferenceFile GetPackageReferenceFile(Project project) { Debug.Assert(project != null); Tuple <string, string> packageReferenceFiles = VsUtility.GetPackageReferenceFileFullPaths(project); if (File.Exists(packageReferenceFiles.Item1)) { return(new PackageReferenceFile(packageReferenceFiles.Item1)); } else if (File.Exists(packageReferenceFiles.Item2)) { return(new PackageReferenceFile(packageReferenceFiles.Item2)); } return(null); }