public static string GetProjectFilePath(string solutionFilePath, string projectRelativeToSolutionDirectoryFilePath) { var solutionDirectoryPath = PathUtilities.GetDirectoryPath(solutionFilePath); var projectFileUnresolvedPath = PathUtilities.Combine(solutionDirectoryPath, projectRelativeToSolutionDirectoryFilePath); var projectFilePath = PathUtilities.ResolveFilePath(projectFileUnresolvedPath); return(projectFilePath); }
/// <summary> /// The project reference relative file paths are relative to the project directory, not file path. /// </summary> public static IEnumerable <string> GetProjectReferenceDependencyFilePathsForProjectDirectory(string projectDirectoryPath, IEnumerable <string> projectReferenceRelativeFilePaths) { foreach (var projectReferenceRelativeFilePath in projectReferenceRelativeFilePaths) { var projectFileUnresolvedPath = PathUtilities.Combine(projectDirectoryPath, projectReferenceRelativeFilePath); var projectFilePath = PathUtilities.ResolveFilePath(projectFileUnresolvedPath); yield return(projectFilePath); } }
public string GetSolutionFilePath(string currentExecutableFilePath, string solutionFileName) { var binDebugNetCoreAppDirectoryPath = PathUtilities.GetDirectoryPath(currentExecutableFilePath); var binDebugDirectoryPath = PathUtilities.GetParentDirectoryPath(binDebugNetCoreAppDirectoryPath); var binDirectoryPath = PathUtilities.GetParentDirectoryPath(binDebugDirectoryPath); var projectDirectoryPath = PathUtilities.GetParentDirectoryPath(binDirectoryPath); var solutionDirectoryPath = PathUtilities.GetParentDirectoryPath(projectDirectoryPath); var solutionFilePath = PathUtilities.Combine(solutionDirectoryPath, solutionFileName); return(solutionFilePath); }