39 writes to FullPath
Microsoft.Build (7)
Construction\ProjectRootElement.cs (2)
821{ FullPath = path }; 1609FullPath = path;
Construction\Solution\SolutionProjectGenerator.cs (2)
863traversalProject.FullPath = $"{_solutionFile.FullPath}.metaproj"; 987traversalProject.FullPath = path;
Definition\Project.cs (2)
770set => Xml.FullPath = value; 2420set => Xml.FullPath = value;
Evaluation\Evaluator.cs (1)
1943project.FullPath = projectPath;
Microsoft.Build.Engine.OM.UnitTests (27)
Construction\ElementLocationPublic_Tests.cs (4)
30project.FullPath = "c:\\x"; 47project.FullPath = "c:\\x"; 55project.FullPath = "c:\\y"; 68project.FullPath = "c:\\x";
Construction\ProjectRootElement_Tests.cs (8)
157project.FullPath = "X"; 188projectXml1.FullPath = Path.Combine(Directory.GetCurrentDirectory(), @"xyz\abc"); 204projectXml1.FullPath = @"xyz\abc"; 223projectXml1.FullPath = @"xyz\abc"; 242projectXml1.FullPath = Path.Combine(Directory.GetCurrentDirectory(), @"xyz\abc"); 256projectXml1.FullPath = Microsoft.Build.Shared.FileUtilities.GetTemporaryFile(); 259projectXml2.FullPath = projectXml1.FullPath; 759project.FullPath = FileUtilities.GetTemporaryFile();
Definition\Project_Tests.cs (3)
716xml.FullPath = file; 752xml.FullPath = file; 790xml.FullPath = file;
Definition\ProjectCollection_Tests.cs (2)
1360pre.FullPath = FileUtilities.GetTemporaryFile(); 1423pre.FullPath = FileUtilities.GetTemporaryFile();
Instance\ProjectInstance_Tests.cs (6)
420projA.FullPath = Path.Combine(Path.GetTempPath(), "a.proj"); 421projB.FullPath = Path.Combine(Path.GetTempPath(), "b.proj"); 456projA.FullPath = Path.Combine(Path.GetTempPath(), "a.proj"); 457projB.FullPath = Path.Combine(Path.GetTempPath(), "b.proj"); 504projA.FullPath = Path.Combine(tempDir, "a.proj"); 505projB.FullPath = Path.Combine(tempDir, "b.proj");
ObjectModelRemoting\LinkedConstructionModify_Tests.cs (2)
44newReal.Xml.FullPath = tempPath; 59xmlPair.VerifySetter(this.StdGroup.Disk.GetAbsolutePath("tempRenamed"), (p) => p.FullPath, (p, v) => p.FullPath = v);
ObjectModelRemoting\LinkedSpecialCasesScenarios.cs (1)
81newReal.Xml.FullPath = tempPath;
ObjectModelRemoting\RemoteProjectsProviderMock\ConstructionLinkMocks\MockProjectRootElementLink.cs (1)
37public string FullPath { get => this.ProjectXml.FullPath; set => this.ProjectXml.FullPath = value; }
Microsoft.Build.Engine.UnitTests (4)
BackEnd\BuildManager_Tests.cs (2)
3700mainRootElement.FullPath = testFiles.CreatedFiles[1]; 3851root.FullPath = Path.GetTempFileName();
Evaluation\Preprocessor_Tests.cs (1)
361twoXml.FullPath = "p2";
ExpressionTreeExpression_Tests.cs (1)
372xml.FullPath = @"c:\abc\foo.proj";
Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost (1)
Build\ProjectBuildManager.cs (1)
118xml.FullPath = path;
149 references to FullPath
Microsoft.Build (78)
Construction\ProjectRootElement.cs (7)
401public string EscapedFullPath => _escapedFullPath ?? (_escapedFullPath = ProjectCollection.Escape(FullPath)); 456MarkDirty("Set project FullPath to '{0}'", FullPath); 1654ErrorUtilities.VerifyThrowInvalidOperation(!string.IsNullOrEmpty(FullPath), "ValueNotSet", $"{nameof(ProjectRootElement)}.{nameof(FullPath)}"); 1656ReloadFrom(FullPath, throwIfUnsavedChanges, preserveFormatting); 1687/// Reloading from an XMLReader will retain the previous root element location (<see cref="FullPath"/>, <see cref="DirectoryPath"/>, <see cref="ProjectFileLocation"/>). 1710document.FullPath = FullPath;
Construction\Solution\SolutionProjectGenerator.cs (2)
984string path = traversalProject.FullPath; 1009if (traversalInstance.Targets[targetName].Location.File == traversalProject.FullPath)
Definition\Project.cs (4)
768get => Xml.FullPath; 2095Trace.WriteLine(String.Format(CultureInfo.InvariantCulture, "MSBUILD: Is dirty because {0} [{1} - {2}] [PC Hash {3}]", reason, FullPath, import.ImportedProject.FullPath == FullPath ? String.Empty : import.ImportedProject.FullPath, ProjectCollection.GetHashCode())); 2418get => Xml.FullPath;
Definition\ProjectCollection.cs (1)
1398ErrorUtilities.ThrowInvalidOperation("OM_ProjectXmlCannotBeUnloadedDueToLoadedProjects", projectRootElement.FullPath, conflictingProject.FullPath);
Definition\ProjectItem.cs (1)
862value = BuiltInMetadata.GetMetadataValueEscaped(_project.DirectoryPath, _evaluatedIncludeBeforeWildcardExpansionEscaped, _evaluatedIncludeEscaped, this.Xml.ContainingProject.FullPath, name, ref _fullPath);
Evaluation\Evaluator.cs (31)
274if (projectRootElement.FullPath != null) 423items.Add(itemFactory.CreateItem(includeSplitFileEscaped, includeSplitEscaped, itemElement.ContainingProject.FullPath)); 823string output = string.Format(CultureInfo.CurrentUICulture, "###: MSBUILD: Evaluating or reevaluating project {0} with {1} global properties and {2} tools version, child count {3}, CurrentSolutionConfigurationContents hash {4} other properties:\n{5}", _projectRootElement.FullPath, globalPropertiesCount, _data.Toolset.ToolsVersion, _projectRootElement.Count, hash, propertyDump); 875using (_evaluationProfiler.TrackFile(currentProjectOrImport.FullPath)) 1172if (string.IsNullOrEmpty(_projectRootElement.FullPath)) 1186string projectFileWithoutExtension = EscapingUtilities.Escape(Path.GetFileNameWithoutExtension(_projectRootElement.FullPath)); 1187string projectExtension = EscapingUtilities.Escape(Path.GetExtension(_projectRootElement.FullPath)); 1717importElement.ContainingProject.FullPath, 1725ProjectFile = importElement.ContainingProject.FullPath 1832ProjectFile = importElement.ContainingProject.FullPath, 1936string projectPath = _projectRootElement.FullPath != null ? 1937_projectRootElement.FullPath + projectNameEnding : 2008importElement.ContainingProject.FullPath, 2014ProjectFile = importElement.ContainingProject.FullPath, 2069importElement.ContainingProject.FullPath, 2075ProjectFile = importElement.ContainingProject.FullPath, 2104if (string.Equals(_projectRootElement.FullPath, importFileUnescaped, StringComparison.OrdinalIgnoreCase) /* We are trying to import ourselves */) 2121string importedBy = importElement.ContainingProject.FullPath ?? string.Empty; 2147parenthesizedProjectLocation = $"[{_projectRootElement.FullPath}]"; 2199_streamImports.Add(importedProjectElement.FullPath); 2209importedProjectElement.FullPath, 2210importElement.ContainingProject.FullPath, 2215ImportedProjectFile = importedProjectElement.FullPath, 2217ProjectFile = importElement.ContainingProject.FullPath 2241importElement.ContainingProject.FullPath, 2247ProjectFile = importElement.ContainingProject.FullPath, 2296importElement.ContainingProject.FullPath, 2302ProjectFile = importElement.ContainingProject.FullPath, 2372string importedBy = importElement.ContainingProject.FullPath; 2592? $"{_lastModifiedProject.FullPath}{streamImports}" 2593: $"{_lastModifiedProject.FullPath}{streamImports};{oldValue.EvaluatedValue}",
Evaluation\LazyItemEvaluator.cs (1)
135var clonedItem = itemFactory.CreateItem(Item, OriginatingItemElement.ContainingProject.FullPath);
Evaluation\LazyItemEvaluator.IncludeOperation.cs (2)
89itemsToAdd.Add(_itemFactory.CreateItem(value, value, _itemElement.ContainingProject.FullPath)); 132itemsToAdd.Add(_itemFactory.CreateItem(includeSplitFileEscaped, glob, _itemElement.ContainingProject.FullPath));
Evaluation\Preprocessor.cs (2)
316$"\r\n{Equals140}\r\n{importTag}\r\n\r\n{resolved.FullPath.Replace("--", "__")}\r\n{Equals140}\r\n")); 318_filePaths.Push(resolved.FullPath);
Evaluation\ProjectParser.cs (1)
136ProjectErrorUtilities.VerifyThrowInvalidProject(element.Name != XMakeElements.visualStudioProject, element.Location, "ProjectUpgradeNeeded", _project.FullPath);
Evaluation\ProjectRootElementCache.cs (14)
210using (var xtr = XmlReaderExtension.Create(projectRootElement.FullPath, projectRootElement.ProjectRootElementCache.LoadProjectsReadOnly)) 351projectRootElement.FullPath.Equals(projectFile, StringComparison.OrdinalIgnoreCase), 354projectRootElement.FullPath); 520if (projectRootElement.FullPath != null) 524_weakCache.Remove(projectRootElement.FullPath); 538ErrorUtilities.VerifyThrowInternalNull(projectRootElement.FullPath, "FullPath"); 558_weakCache.TryGetValue(projectRootElement.FullPath, out existingWeakEntry); 565DebugTraceCache("Adding: ", projectRootElement.FullPath); 566_weakCache[projectRootElement.FullPath] = projectRootElement; 606DebugTraceCache("Shedding: ", node.Value.FullPath); 619DebugTraceCache("Forgetting: ", projectRootElement.FullPath); 621_weakCache.Remove(projectRootElement.FullPath); 629DebugTraceCache("Out of date dropped from XML cache: ", projectRootElement.FullPath); 639if (_weakCache.TryGetValue(projectRootElement.FullPath, out var cached) && cached == projectRootElement)
Evaluation\SimpleProjectRootElementCache.cs (5)
67rootElement.FullPath.Equals(key, StringComparison.OrdinalIgnoreCase), 70rootElement.FullPath); 83if (_cache.TryAdd(projectRootElement.FullPath, projectRootElement)) 127if (projectRootElement.FullPath != null) 129_cache.TryRemove(projectRootElement.FullPath, out _);
Instance\ProjectInstance.cs (5)
1845_importPaths.Add(import.FullPath); 1854_importPathsIncludingDuplicates.Add(import.FullPath); 3245importPaths.Add(resolvedImport.ImportedProject.FullPath); 3258importPathsIncludingDuplicates.Add(resolvedImport.ImportedProject.FullPath); 3432return import.ImportedProject.FullPath;
Instance\TaskRegistry.cs (1)
724projectUsingTaskInXml.ContainingProject.FullPath);
ObjectModelRemoting\ConstructionObjectLinks\ProjectRootElementLink.cs (1)
46/// Access to remote <see cref="ProjectRootElement.FullPath"/>.
Microsoft.Build.Engine.OM.UnitTests (56)
Construction\ElementLocationPublic_Tests.cs (6)
35Assert.Equal(project.FullPath, target.Location.File); 36Assert.Equal(project.FullPath, target.OutputsLocation.File); 52Assert.Equal(project.FullPath, target.Location.File); 53Assert.Equal(project.FullPath, target.OutputsLocation.File); 57Assert.Equal(project.FullPath, target.Location.File); 58Assert.Equal(project.FullPath, target.OutputsLocation.File);
Construction\ProjectRootElement_Tests.cs (10)
159Assert.Equal(project.FullPath, Path.Combine(Directory.GetCurrentDirectory(), "X")); 174ProjectRootElement projectXml2 = ProjectRootElement.Open(projectXml1.FullPath); 259projectXml2.FullPath = projectXml1.FullPath; 641Assert.Equal(path, project.FullPath); 673Assert.Equal(path, project.FullPath); 760string projectFullPath = project.FullPath; 1299var xml0 = ProjectRootElement.TryOpen(projectXml.FullPath, projectCollection, preserveFormatting: true); 1302var xml1 = ProjectRootElement.TryOpen(projectXml.FullPath, projectCollection, preserveFormatting: false); 1305var xml2 = ProjectRootElement.TryOpen(projectXml.FullPath, projectCollection, preserveFormatting: null); 1763projectFileAssert.Invoke(initialLocation, reloadLocation, EmptyIfNull(rootElement.FullPath));
Definition\Project_Tests.cs (25)
2558zero.AddImport(one.FullPath); 2559zero.AddImport(two.FullPath); 2560zero.AddImport(two.FullPath); // Duplicated import: only the first one should be entered 2561zero.AddImport(zero.FullPath); // Ignored self import 2565one.AddImport(three.FullPath); 2569one.AddImport(four.FullPath).Condition = "false"; // False condition; should not be entered 3917eventArgs.ProjectFile.ShouldBe(pre.FullPath); 3922logger.AssertLogContains($"Project \"{import.Project}\" was not imported by \"{pre.FullPath}\" at ({eventArgs.LineNumber},{eventArgs.ColumnNumber}), due to false condition; ( \'$(Something)\' == \'nothing\' ) was evaluated as ( \'\' == \'nothing\' )."); 3958eventArgs.ProjectFile.ShouldBe(pre.FullPath); 3963logger.AssertLogContains($"Project \"{import.Project}\" was not imported by \"{pre.FullPath}\" at ({eventArgs.LineNumber},{eventArgs.ColumnNumber}), due to no matching files."); 4003eventArgs.ProjectFile.ShouldBe(pre.FullPath); 4008logger.AssertLogContains($"Project \"{import.Project}\" was not imported by \"{pre.FullPath}\" at ({eventArgs.LineNumber},{eventArgs.ColumnNumber}), due to the file being empty."); 4050eventArgs.ProjectFile.ShouldBe(pre.FullPath); 4055logger.AssertLogContains($"Project \"{import.Project}\" was not imported by \"{pre.FullPath}\" at ({eventArgs.LineNumber},{eventArgs.ColumnNumber}), due to the file being invalid."); 4090eventArgs.ProjectFile.ShouldBe(pre.FullPath); 4095logger.AssertLogContains($"Project \"{import.Project}\" was not imported by \"{pre.FullPath}\" at ({eventArgs.LineNumber},{eventArgs.ColumnNumber}), due to the expression evaluating to an empty string."); 4133eventArgs.ProjectFile.ShouldBe(pre.FullPath); 4138logger.AssertLogContains($"Project \"{import.Project}\" was not imported by \"{pre.FullPath}\" at ({eventArgs.LineNumber},{eventArgs.ColumnNumber}), due to the file not existing."); 4176eventArgs.ProjectFile.ShouldBe(pre.FullPath); 4181logger.AssertLogContains($"Project \"{import.Project}\" was not imported by \"{pre.FullPath}\" at ({eventArgs.LineNumber},{eventArgs.ColumnNumber}), due to no matching files."); 4206var import = pre2.AddImport(pre1.FullPath); 4219eventArgs.ImportedProjectFile.ShouldBe(pre1.FullPath); 4221eventArgs.ProjectFile.ShouldBe(pre2.FullPath); 4227logger.AssertLogContains($"Importing project \"{pre1.FullPath}\" into project \"{pre2.FullPath}\" at ({eventArgs.LineNumber},{eventArgs.ColumnNumber}).");
Definition\ProjectCollection_Tests.cs (1)
726ProjectCollection.GlobalProjectCollection.LoadProject(xml.FullPath);
Definition\ProtectImports_Tests.cs (3)
528Assert.Equal(_importFilename, item.Xml.ContainingProject.FullPath); // "Item was not found in the imported project." 619Assert.Equal(_importFilename, property.Xml.ContainingProject.FullPath); // "Property was not found in the imported project." 635Assert.Null(item.Xml.ContainingProject.FullPath); // "Item was not found in the project." // null because XML is in-memory
Instance\ProjectInstance_Tests.cs (6)
430Assert.Equal(projB.FullPath, projBInstanceItem.GetMetadataValue(CapturedMetadataName)); 431Assert.Equal(projA.FullPath, projAInstanceItem.GetMetadataValue(CapturedMetadataName)); 472Assert.Equal(projB.FullPath, projBInstanceItem.GetMetadataValue(CapturedMetadataName)); 473Assert.Equal(projA.FullPath, projAInstanceItem.GetMetadataValue(CapturedMetadataName)); 514Assert.Equal(projA.FullPath, projAInstanceItem.GetMetadataValue(CapturedMetadataName)); 515Assert.Equal(projB.FullPath, projBInstanceItem.GetMetadataValue(CapturedMetadataName));
ObjectModelRemoting\Helpers\ViewValidation.construction.cs (2)
524Assert.Equal(realXml.FullPath, viewXml.FullPath);
ObjectModelRemoting\LinkedConstructionModify_Tests.cs (2)
59xmlPair.VerifySetter(this.StdGroup.Disk.GetAbsolutePath("tempRenamed"), (p) => p.FullPath, (p, v) => p.FullPath = v); 136Assert.True(string.IsNullOrEmpty(clone.FullPath));
ObjectModelRemoting\RemoteProjectsProviderMock\ConstructionLinkMocks\MockProjectRootElementLink.cs (1)
37public string FullPath { get => this.ProjectXml.FullPath; set => this.ProjectXml.FullPath = value; }
Microsoft.Build.Engine.UnitTests (14)
Definition\Project_Internal_Tests.cs (2)
279projectRootElement.FullPath, 334using (XmlReader xmlReader = XmlReader.Create(projectRootElement.FullPath))
Evaluation\Evaluator_Tests.cs (2)
1046bool circularImportsAreRecorded = project.ImportsIncludingDuplicates.Any(resolvedImport => string.Equals(resolvedImport.ImportingElement.ContainingProject.FullPath, importPath2, StringComparison.OrdinalIgnoreCase)); 1514ProjectRootElement importXml = ProjectRootElement.Open(project.Items.ElementAt(0).Xml.ContainingProject.FullPath);
Evaluation\Preprocessor_Tests.cs (5)
779File.Delete(xml1.FullPath); 780File.Delete(xml2.FullPath); 781File.Delete(xml3.FullPath); 995var virtualImport = project.Imports.First(i => i.ImportedProject.FullPath.StartsWith(projectPath + ".SdkResolver")); 996string virtualProjectPath = virtualImport.ImportedProject.FullPath;
Evaluation\ProjectSdkImplicitImport_Tests.cs (4)
144Assert.Equal(_sdkPropsPath, initialResolvedImport.ImportedProject.FullPath); 148Assert.Equal(_sdkTargetsPath, finalResolvedImport.ImportedProject.FullPath); 825Assert.NotNull(property?.Xml?.ContainingProject?.FullPath); 827Assert.Equal(expectedContainingProjectPath, property.Xml.ContainingProject.FullPath);
Instance\ProjectInstance_Internal_Tests.cs (1)
899projectRootElement.FullPath,
TaskUsageLogger (1)
TaskUsageLogger.cs (1)
289UsingTaskData taskData = new UsingTaskData(evaluatedTaskName, evaluatedTaskAssemblyPath, pre.FullPath);