11 instantiations of ProjectRootElement
Microsoft.Build (11)
Construction\ProjectRootElement.cs (9)
736return new ProjectRootElement(projectRootElementCache, Project.DefaultNewProjectTemplateOptions, isEphemeral: true); 812var projectRootElement = new ProjectRootElement( 849return new ProjectRootElement(xmlReader, projectCollection.ProjectRootElementCache, true /*Explicitly loaded*/, 1733var throwaway = new ProjectRootElement(document); 1742return new ProjectRootElement(projectRootElementCache, Project.DefaultNewProjectTemplateOptions); 1747return new ProjectRootElement(projectRootElementCache, projectFileOptions); 1781return new ProjectRootElement(document, ProjectCollection.GlobalProjectCollection.ProjectRootElementCache); 2031return new ProjectRootElement( 2059return new ProjectRootElement(projectFile, projectRootElementCache, preserveFormatting);
Instance\ProjectInstance.cs (1)
3097ProjectRootElement projectRootElement = new(
ObjectModelRemoting\LinkedObjectFactory.cs (1)
130return new ProjectRootElement(link);
440 references to ProjectRootElement
dotnet (15)
Commands\NuGet\NuGetVirtualProjectBuilder.cs (3)
24public ProjectRootElement CreateProjectRootElement(string entryPointFilePath, ProjectCollection projectCollection) 37out var projectRootElement, 43public void SaveProject(string entryPointFilePath, ProjectRootElement projectRootElement)
Commands\Package\VirtualProjectPackageReflector.cs (2)
12/// Utility for reflecting changes in a <see cref="ProjectRootElement"/> (modified by NuGet) 21internal static void ReflectChangesToDirectives(ProjectRootElement projectRootElement, string entryPointFilePath)
Commands\Run\Api\RunApiCommand.cs (1)
79out var projectRootElement,
Commands\Solution\Add\SolutionAddCommand.cs (2)
166ProjectRootElement projectRootElement; 169projectRootElement = ProjectRootElement.Open(fullProjectPath);
Extensions\ProjectRootElementExtensions.cs (1)
12public static string GetProjectTypeGuid(this ProjectRootElement rootElement)
MsbuildProject.cs (6)
36public ProjectRootElement ProjectRootElement { get; private set; } 45private MsbuildProject(ProjectCollection projects, ProjectRootElement project, bool interactive) 72var project = TryOpenProject(projects, projectPath); 85var project = TryOpenProject(projects, projectFilePath); 275private static ProjectRootElement TryOpenProject(ProjectCollection projects, string filename) 279return ProjectRootElement.Open(filename, projects, preserveFormatting: true);
installer.tasks (2)
GenerateFileVersionProps.cs (2)
122ProjectRootElement props = null; 126props = ProjectRootElement.Create();
Microsoft.Build (394)
BuildCheck\Infrastructure\BuildEventsProcessor.cs (2)
85ProjectRootElement xml = ProjectRootElement.OpenProjectOrSolution(
Construction\ProjectChooseElement.cs (5)
33internal ProjectChooseElement(XmlElement xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject) 42private ProjectChooseElement(XmlElement xmlElement, ProjectRootElement containingProject) 88internal static ProjectChooseElement CreateDisconnected(ProjectRootElement containingProject) 102ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement || parent is ProjectWhenElement || parent is ProjectOtherwiseElement, "OM_CannotAcceptParent"); 119protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectElement.cs (9)
61internal ProjectElement(XmlElement xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject) 241public ProjectRootElement ContainingProject 430internal void SetProjectRootElementFromParser(XmlElementWithLocation xmlElement, ProjectRootElement projectRootElement) 504protected internal virtual ProjectElement Clone(ProjectRootElement factory) 522protected abstract ProjectElement CreateNewInstance(ProjectRootElement owner); 524internal static ProjectElement CreateNewInstance(ProjectElement xml, ProjectRootElement owner) 618internal WrapperForProjectRootElement(ProjectRootElement containingProject) 627internal new ProjectRootElement ContainingProject { get; } 636protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectElementContainer.cs (3)
57internal ProjectElementContainer(XmlElement xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject) 414protected internal virtual ProjectElementContainer DeepClone(ProjectRootElement factory, ProjectElementContainer parent) 434internal static ProjectElementContainer DeepClone(ProjectElementContainer xml, ProjectRootElement factory, ProjectElementContainer parent)
Construction\ProjectExtensionsElement.cs (9)
35internal ProjectExtensionsElement(XmlElement xmlElement, ProjectRootElement parent, ProjectRootElement project) 44private ProjectExtensionsElement(XmlElement xmlElement, ProjectRootElement project) 139idElement.InnerXml.Replace(ProjectRootElement.EmptyProjectFileXmlNamespace, string.Empty) != value) 177internal static ProjectExtensionsElement CreateParented(XmlElementWithLocation element, ProjectRootElement parent, ProjectRootElement containingProject) 186internal static ProjectExtensionsElement CreateDisconnected(ProjectRootElement containingProject) 199ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement, "OM_CannotAcceptParent"); 203protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectImportElement.cs (7)
36internal ProjectImportElement(XmlElementWithLocation xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject, SdkReference sdkReference = null) 46internal ProjectImportElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 123/// added because of the <see cref="ProjectRootElement.Sdk"/> attribute and the location where the project was 145internal static ProjectImportElement CreateDisconnected(string project, ProjectRootElement containingProject) 157ProjectRootElement containingProject, 179ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement || parent is ProjectImportGroupElement, "OM_CannotAcceptParent"); 183protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectImportGroupElement.cs (5)
32internal ProjectImportGroupElement(XmlElementWithLocation xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject) 41private ProjectImportGroupElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 77internal static ProjectImportGroupElement CreateDisconnected(ProjectRootElement containingProject) 90ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement, "OM_CannotAcceptParent"); 94protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectItemDefinitionElement.cs (4)
32internal ProjectItemDefinitionElement(XmlElement xmlElement, ProjectItemDefinitionGroupElement parent, ProjectRootElement containingProject) 41private ProjectItemDefinitionElement(XmlElement xmlElement, ProjectRootElement containingProject) 97internal static ProjectItemDefinitionElement CreateDisconnected(string itemType, ProjectRootElement containingProject) 120protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectItemDefinitionGroupElement.cs (5)
32internal ProjectItemDefinitionGroupElement(XmlElement xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject) 41private ProjectItemDefinitionGroupElement(XmlElement xmlElement, ProjectRootElement containingProject) 68internal static ProjectItemDefinitionGroupElement CreateDisconnected(ProjectRootElement containingProject) 81ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement, "OM_CannotAcceptParent"); 85protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectItemElement.cs (6)
65internal ProjectItemElement(XmlElementWithLocation xmlElement, ProjectItemGroupElement parent, ProjectRootElement containingProject) 74private ProjectItemElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 189ErrorUtilities.VerifyThrowInvalidOperation(Parent == null || Parent.Parent is ProjectTargetElement || Parent.Parent is ProjectRootElement, "OM_NoMatchOnMetadataOutsideTargets"); 427internal static ProjectItemElement CreateDisconnected(string itemType, ProjectRootElement containingProject) 481ErrorUtilities.VerifyThrowInvalidOperation(parent.Parent is ProjectRootElement || parent.Parent is ProjectTargetElement || parent.Parent is ProjectWhenElement || parent.Parent is ProjectOtherwiseElement, "OM_CannotAcceptParent"); 503protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectItemGroupElement.cs (5)
39internal ProjectItemGroupElement(XmlElementWithLocation xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject) 48private ProjectItemGroupElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 164internal static ProjectItemGroupElement CreateDisconnected(ProjectRootElement containingProject) 177ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement || parent is ProjectTargetElement || parent is ProjectWhenElement || parent is ProjectOtherwiseElement, "OM_CannotAcceptParent"); 181protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectMetadataElement.cs (4)
33internal ProjectMetadataElement(XmlElementWithLocation xmlElement, ProjectElementContainer parent, ProjectRootElement project) 42private ProjectMetadataElement(XmlElementWithLocation xmlElement, ProjectRootElement project) 105internal static ProjectMetadataElement CreateDisconnected(string name, ProjectRootElement containingProject, ElementLocation location = null) 174protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectOnErrorElement.cs (4)
30internal ProjectOnErrorElement(XmlElementWithLocation xmlElement, ProjectTargetElement parent, ProjectRootElement project) 39private ProjectOnErrorElement(XmlElementWithLocation xmlElement, ProjectRootElement project) 75internal static ProjectOnErrorElement CreateDisconnected(string executeTargets, ProjectRootElement containingProject) 94protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectOtherwiseElement.cs (4)
31internal ProjectOtherwiseElement(XmlElementWithLocation xmlElement, ProjectElementContainer parent, ProjectRootElement project) 40private ProjectOtherwiseElement(XmlElementWithLocation xmlElement, ProjectRootElement project) 83internal static ProjectOtherwiseElement CreateDisconnected(ProjectRootElement containingProject) 101protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectOutputElement.cs (4)
31internal ProjectOutputElement(XmlElement xmlElement, ProjectTaskElement parent, ProjectRootElement containingProject) 40private ProjectOutputElement(XmlElement xmlElement, ProjectRootElement containingProject) 139internal static ProjectOutputElement CreateDisconnected(string taskParameter, string itemType, string propertyName, ProjectRootElement containingProject) 174protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectPropertyElement.cs (4)
40internal ProjectPropertyElement(XmlElementWithLocation xmlElement, ProjectPropertyGroupElement parent, ProjectRootElement containingProject) 49private ProjectPropertyElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 94internal static ProjectPropertyElement CreateDisconnected(string name, ProjectRootElement containingProject) 139protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectPropertyGroupElement.cs (5)
31internal ProjectPropertyGroupElement(XmlElementWithLocation xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject) 40private ProjectPropertyGroupElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 97internal static ProjectPropertyGroupElement CreateDisconnected(ProjectRootElement containingProject) 110ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement || parent is ProjectTargetElement || parent is ProjectWhenElement || parent is ProjectOtherwiseElement, "OM_CannotAcceptParent"); 114protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectRootElement.cs (40)
732internal static ProjectRootElement CreateEphemeral(ProjectRootElementCacheBase projectRootElementCache) 743public static ProjectRootElement Create() 752public static ProjectRootElement Create(NewProjectFileOptions projectFileOptions) 761public static ProjectRootElement Create(ProjectCollection projectCollection) 769public static ProjectRootElement Create(ProjectCollection projectCollection, NewProjectFileOptions projectFileOptions) 780public static ProjectRootElement Create(string path) 789public static ProjectRootElement Create(string path, NewProjectFileOptions newProjectFileOptions) 798public static ProjectRootElement Create(string path, ProjectCollection projectCollection) 807public static ProjectRootElement Create(string path, ProjectCollection projectCollection, NewProjectFileOptions newProjectFileOptions) 812var projectRootElement = new ProjectRootElement( 825public static ProjectRootElement Create(XmlReader xmlReader) 835public static ProjectRootElement Create(XmlReader xmlReader, ProjectCollection projectCollection) 845public static ProjectRootElement Create(XmlReader xmlReader, ProjectCollection projectCollection, bool preserveFormatting) 858public static ProjectRootElement Open(string path) 868public static ProjectRootElement Open(string path, ProjectCollection projectCollection) 878public static ProjectRootElement Open(string path, ProjectCollection projectCollection, bool? preserveFormatting) 898public static ProjectRootElement TryOpen(string path) 916public static ProjectRootElement TryOpen(string path, ProjectCollection projectCollection) 935public static ProjectRootElement TryOpen(string path, ProjectCollection projectCollection, bool? preserveFormatting) 942ProjectRootElement projectRootElement = projectCollection.ProjectRootElementCache.TryGet(path, preserveFormatting); 1635public ProjectRootElement DeepClone() 1637return (ProjectRootElement)DeepClone(this, null); 1644/// See <see cref="ProjectRootElement.ReloadFrom(XmlReader, bool, bool?)"/> 1648ErrorUtilities.VerifyThrowInvalidOperation(!string.IsNullOrEmpty(FullPath), "ValueNotSet", $"{nameof(ProjectRootElement)}.{nameof(FullPath)}"); 1657/// See <see cref="ProjectRootElement.ReloadFrom(XmlReader, bool, bool?)"/> 1675/// A reload operation completely replaces the state of this <see cref="ProjectRootElement"/> object. This operation marks the 1733var throwaway = new ProjectRootElement(document); 1740internal static ProjectRootElement Create(ProjectRootElementCacheBase projectRootElementCache) 1745internal static ProjectRootElement Create(ProjectRootElementCacheBase projectRootElementCache, NewProjectFileOptions projectFileOptions) 1756internal static ProjectRootElement Open(string path, ProjectRootElementCacheBase projectRootElementCache, bool isExplicitlyLoaded, 1761ProjectRootElement projectRootElement = projectRootElementCache.Get(path, 1777internal static ProjectRootElement Open(XmlDocumentWithLocation document) 1789internal static ProjectRootElement OpenProjectOrSolution(string fullPath, IDictionary<string, string> globalProperties, string toolsVersion, ProjectRootElementCacheBase projectRootElementCache, bool isExplicitlyLoaded) 1793ProjectRootElement projectRootElement = projectRootElementCache.Get( 1905internal List<ProjectImportElement> GetImplicitImportNodes(ProjectRootElement currentProjectOrImport) 2009protected override ProjectElement CreateNewInstance(ProjectRootElement owner) 2019private static ProjectRootElement OpenLoader(string path, ProjectRootElementCacheBase projectRootElementCache) 2024private static ProjectRootElement OpenLoaderPreserveFormatting(string path, ProjectRootElementCacheBase projectRootElementCache) 2029private static ProjectRootElement OpenLoader(string path, ProjectRootElementCacheBase projectRootElementCache, bool preserveFormatting) 2044private static ProjectRootElement CreateProjectFromPath(
Construction\ProjectSdkElement.cs (6)
28internal ProjectSdkElement(XmlElementWithLocation xmlElement, ProjectRootElement parent, 29ProjectRootElement containingProject) 38private ProjectSdkElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 83ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement, "OM_CannotAcceptParent"); 87protected override ProjectElement CreateNewInstance(ProjectRootElement owner) 97ProjectRootElement containingProject)
Construction\ProjectTargetElement.cs (7)
41internal ProjectTargetElement(XmlElementWithLocation xmlElement, ProjectRootElement parent, ProjectRootElement containingProject) 50private ProjectTargetElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 283((ProjectRootElement)Parent).ContainsTargetsWithReturnsAttribute = true; 404internal static ProjectTargetElement CreateDisconnected(string name, ProjectRootElement containingProject) 417ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement, "OM_CannotAcceptParent"); 430protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectTaskElement.cs (4)
46internal ProjectTaskElement(XmlElementWithLocation xmlElement, ProjectTargetElement parent, ProjectRootElement containingProject) 55private ProjectTaskElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 412internal static ProjectTaskElement CreateDisconnected(string name, ProjectRootElement containingProject) 431protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectUsingTaskBodyElement.cs (4)
34internal ProjectUsingTaskBodyElement(XmlElementWithLocation xmlElement, ProjectUsingTaskElement parent, ProjectRootElement containingProject) 44private ProjectUsingTaskBodyElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 123internal static ProjectUsingTaskBodyElement CreateDisconnected(string evaluate, string body, ProjectRootElement containingProject) 144protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectUsingTaskElement.cs (6)
31internal ProjectUsingTaskElement(XmlElementWithLocation xmlElement, ProjectRootElement parent, ProjectRootElement containingProject) 40private ProjectUsingTaskElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 232internal static ProjectUsingTaskElement CreateDisconnected(string taskName, string assemblyFile, string assemblyName, string runtime, string architecture, ProjectRootElement containingProject) 268ErrorUtilities.VerifyThrowInvalidOperation(parent is ProjectRootElement, "OM_CannotAcceptParent"); 272protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectUsingTaskParameterElement.cs (4)
31internal ProjectUsingTaskParameterElement(XmlElementWithLocation xmlElement, UsingTaskParameterGroupElement parent, ProjectRootElement containingProject) 40private ProjectUsingTaskParameterElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 166internal static ProjectUsingTaskParameterElement CreateDisconnected(string parameterName, string output, string required, string parameterType, ProjectRootElement containingProject) 191protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\ProjectWhenElement.cs (4)
32internal ProjectWhenElement(XmlElement xmlElement, ProjectChooseElement parent, ProjectRootElement containingProject) 41private ProjectWhenElement(XmlElement xmlElement, ProjectRootElement containingProject) 68internal static ProjectWhenElement CreateDisconnected(string condition, ProjectRootElement containingProject) 88protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Construction\Solution\SolutionProjectGenerator.cs (9)
236internal static void AddPropertyGroupForSolutionConfiguration(ProjectRootElement msbuildProject, SolutionFile solutionFile, SolutionConfigurationInSolution solutionConfiguration) 906ProjectRootElement traversalProject = ProjectRootElement.Create(); 1067private (ProjectImportElement ImportBeforeSln, ProjectImportElement ImportAfterSln) CreateBeforeAndAfterSolutionImports(ProjectRootElement traversalProject) 1088private void EmitMetaproject(ProjectRootElement metaproject, string path) 2293private void AddConfigurationPlatformDefaults(ProjectRootElement traversalProject) 2311private void AddPropertyGroupForSolutionConfiguration(ProjectRootElement traversalProject, SolutionConfigurationInSolution solutionConfiguration) 2327private static void AddVenusConfigurationDefaults(ProjectRootElement traversalProject) 2339private void AddGlobalProperties(ProjectRootElement traversalProject)
Construction\UsingTaskParameterGroupElement.cs (4)
32internal UsingTaskParameterGroupElement(XmlElementWithLocation xmlElement, ProjectElementContainer parent, ProjectRootElement containingProject) 42private UsingTaskParameterGroupElement(XmlElementWithLocation xmlElement, ProjectRootElement containingProject) 95internal static UsingTaskParameterGroupElement CreateDisconnected(ProjectRootElement containingProject) 112protected override ProjectElement CreateNewInstance(ProjectRootElement owner)
Definition\Project.cs (31)
140: this(ProjectRootElement.Create(ProjectCollection.GlobalProjectCollection, newProjectFileOptions)) 150: this(ProjectRootElement.Create(projectCollection), null, null, projectCollection) 160: this(ProjectRootElement.Create(projectCollection, newProjectFileOptions), null, null, projectCollection) 173: this(ProjectRootElement.Create(projectCollection, DefaultNewProjectTemplateOptions), globalProperties, toolsVersion, projectCollection) 187: this(ProjectRootElement.Create(projectCollection, newProjectFileOptions), globalProperties, toolsVersion, projectCollection) 199public Project(ProjectRootElement xml) 214public Project(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion) 230public Project(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, ProjectCollection projectCollection) 247public Project(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings) 265public Project(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, string subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings) 270private Project(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, string subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, 514/// Create a <see cref="ProjectRootElement"/> based project. 516/// <param name="rootElement">The <see cref="ProjectRootElement"/> to evaluate the project from.</param> 518public static Project FromProjectRootElement(ProjectRootElement rootElement, ProjectOptions options) 590public ProjectRootElement Xml => implementation.Xml; 1653internal bool UsesProjectRootElement(ProjectRootElement xmlRootElement) 1812internal void VerifyThrowInvalidOperationNotImported(ProjectRootElement otherXml) 1886public ProjectImpl(Project owner, ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, string subToolsetVersion, ProjectLoadSettings loadSettings) 1920Xml = ProjectRootElement.Create(xmlReader, ProjectCollection, 1959Xml = ProjectRootElement.OpenProjectOrSolution( 2040public override ProjectRootElement Xml { get; } 2871foreach (ProjectRootElement import in _data.ImportClosure.Where(i => i.ImportingElement?.ImplicitImportLocation == ImplicitImportLocation.Top).Select(i => i.ImportedProject)) 2886foreach (ProjectRootElement import in _data.ImportClosure.Where(i => i.ImportingElement?.ImplicitImportLocation == ImplicitImportLocation.Bottom).Select(i => i.ImportedProject)) 3367public bool UsesProjectRootElement(ProjectRootElement xmlRootElement) 3591internal void VerifyThrowInvalidOperationNotImported(ProjectRootElement otherXml) 3937IEnumerable<ProjectRootElement> children = _data.ImportClosure.Where(resolvedImport => ReferenceEquals(resolvedImport.ImportingElement, import)).Select(triple => triple.ImportedProject); 3939foreach (ProjectRootElement child in children) 3972bool UsesProjectRootElement(ProjectRootElement xmlRootElement); 3997public bool UsesProjectRootElement(ProjectRootElement xmlRootElement) { throw new NotImplementedException(); } 4530public void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult) 4539public void RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated)
Definition\ProjectCollection.cs (7)
432/// Raised when a <see cref="ProjectRootElement"/> contained by this instance is changed. 1259ProjectRootElement xml = ProjectRootElement.OpenProjectOrSolution(fileName, globalProperties, toolsVersion, ProjectRootElementCache, true /*explicitlyloaded*/); 1442public void UnloadProject(ProjectRootElement projectRootElement) 1592public bool TryUnloadProject(ProjectRootElement projectRootElement) 1883public ProjectAddedToProjectCollectionEventArgs(ProjectRootElement element) 1891public ProjectRootElement ProjectRootElement { get; }
Definition\ResolvedImport.cs (3)
21internal ResolvedImport(ProjectImportElement importingElement, ProjectRootElement importedProject, int versionEvaluated, SdkResult sdkResult, bool isImported) 35internal ResolvedImport(Project project, ProjectImportElement importingElement, ProjectRootElement importedProject, int versionEvaluated, SdkResult sdkResult) 55public ProjectRootElement ImportedProject { get; }
Definition\Toolset.cs (3)
969ProjectRootElement projectRootElement; 973projectRootElement = ProjectRootElement.Open(defaultTasks); 977projectRootElement = ProjectRootElement.Open(defaultTasksFile, projectRootElementCache,
Evaluation\Evaluator.cs (29)
118private readonly Dictionary<ProjectRootElement, bool> _projectSupportsReturnsAttribute; 123private readonly ProjectRootElement _projectRootElement; 187private ProjectRootElement _lastModifiedProject; 204ProjectRootElement projectRootElement, 256_projectSupportsReturnsAttribute = new Dictionary<ProjectRootElement, bool>(); 306ProjectRootElement root, 873private void PerformDepthFirstPass(ProjectRootElement currentProjectOrImport) 960private void UpdateDefaultTargets(ProjectRootElement currentProjectOrImport) 1046ProjectTargetInstance targetInstance = targetElement.TargetInstance ?? ReadNewTargetElement(targetElement, _projectSupportsReturnsAttribute[(ProjectRootElement)targetElement.Parent], _evaluationProfiler); 1408List<ProjectRootElement> importedProjectRootElements = ExpandAndLoadImports(directoryOfImportingFile, importElement, out var sdkResult); 1412foreach (ProjectRootElement importedProjectRootElement in importedProjectRootElements) 1515private List<ProjectRootElement> ExpandAndLoadImports(string directoryOfImportingFile, ProjectImportElement importElement, out SdkResult sdkResult) 1524List<ProjectRootElement> projects; 1588var allProjects = new List<ProjectRootElement>(); 1625List<ProjectRootElement> projects; 1698out List<ProjectRootElement> projects, 1851List<ProjectRootElement> projectList = null; 1859projectList = new List<ProjectRootElement>(projects); 1872projectList ??= new List<ProjectRootElement>(); 1882projectList ??= new List<ProjectRootElement>(); 1921private ProjectRootElement CreateProjectForSdkResult(SdkResult sdkResult) 1969ProjectRootElement InnerCreate(string _, ProjectRootElementCacheBase __) 1971ProjectRootElement project = ProjectRootElement.CreateEphemeral(_projectRootElementCache); 2020bool throwOnFileNotExistsError, out List<ProjectRootElement> imports) 2183ProjectRootElement importedProjectElement; 2194importedProjectElement = ProjectRootElement.OpenProjectOrSolution( 2218imports ??= new List<ProjectRootElement>(); 2300if (((_loadSettings & ProjectLoadSettings.IgnoreEmptyImports) != 0 || Traits.Instance.EscapeHatches.IgnoreEmptyImports) && ProjectRootElement.IsEmptyXmlFile(importFileUnescaped))
Evaluation\IEvaluatorData.cs (2)
303void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult); 308void RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated);
Evaluation\LazyItemEvaluator.EvaluatorData.cs (2)
219public void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult) 224public void RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated)
Evaluation\Preprocessor.cs (7)
40private readonly Dictionary<XmlElement, IList<ProjectRootElement>> _importTable; 67_importTable = new Dictionary<XmlElement, IList<ProjectRootElement>>(imports.Count); 120private void AddToImportTable(XmlElement element, ProjectRootElement importedProject) 122IList<ProjectRootElement> list; 125list = new List<ProjectRootElement>(); 290IList<ProjectRootElement> resolvedList; 303ProjectRootElement resolved = resolvedList[i];
Evaluation\ProjectParser.cs (6)
81private readonly ProjectRootElement _project; 97private ProjectParser(XmlDocumentWithLocation document, ProjectRootElement project) 114internal static void Parse(XmlDocumentWithLocation document, ProjectRootElement projectRootElement) 419/// <param name="parent">The parent <see cref="ProjectRootElement"/>.</param> 421private ProjectImportGroupElement ParseProjectImportGroupElement(XmlElementWithLocation element, ProjectRootElement parent) 450parent is ProjectRootElement || parent is ProjectImportGroupElement,
Evaluation\ProjectRootElementCache.cs (31)
123private WeakValueDictionary<string, ProjectRootElement> _weakCache; 133private LinkedList<ProjectRootElement> _strongCache; 154_weakCache = new WeakValueDictionary<string, ProjectRootElement>(StringComparer.OrdinalIgnoreCase); 155_strongCache = new LinkedList<ProjectRootElement>(); 165private bool IsInvalidEntry(string projectFile, ProjectRootElement projectRootElement) 245internal override ProjectRootElement Get(string projectFile, OpenProjectRootElement loadProjectRootElement, bool isExplicitlyLoaded, 259ProjectRootElement projectRootElement = GetOrLoad(projectFile, loadProjectRootElement: null, isExplicitlyLoaded, preserveFormatting); 290private ProjectRootElement GetOrLoad(string projectFile, OpenProjectRootElement loadProjectRootElement, bool isExplicitlyLoaded, 293ProjectRootElement projectRootElement; 370internal override void AddEntry(ProjectRootElement projectRootElement) 384internal override void RenameEntry(string oldFullPath, ProjectRootElement projectRootElement) 397internal override ProjectRootElement TryGet(string projectFile) 406internal override ProjectRootElement TryGet(string projectFile, bool? preserveFormatting) 408ProjectRootElement result = Get( 431_strongCache = new LinkedList<ProjectRootElement>(); 446_weakCache = new WeakValueDictionary<string, ProjectRootElement>(StringComparer.OrdinalIgnoreCase); 447_strongCache = new LinkedList<ProjectRootElement>(); 466WeakValueDictionary<string, ProjectRootElement> oldWeakCache = _weakCache; 467_weakCache = new WeakValueDictionary<string, ProjectRootElement>(StringComparer.OrdinalIgnoreCase); 469LinkedList<ProjectRootElement> oldStrongCache = _strongCache; 470_strongCache = new LinkedList<ProjectRootElement>(); 472foreach (KeyValuePair<string, ProjectRootElement> kvp in oldWeakCache) 506internal override void DiscardAnyWeakReference(ProjectRootElement projectRootElement) 527private void RenameEntryInternal(string oldFullPathIfAny, ProjectRootElement projectRootElement) 548ProjectRootElement existingWeakEntry; 573private void BoostEntryInStrongCache(ProjectRootElement projectRootElement) 575LinkedListNode<ProjectRootElement> node = _strongCache.First; 608private void ForgetEntry(ProjectRootElement projectRootElement) 614LinkedListNode<ProjectRootElement> strongCacheEntry = _strongCache.Find(projectRootElement); 626private void ForgetEntryIfExists(ProjectRootElement projectRootElement) 630if (_weakCache.TryGetValue(projectRootElement.FullPath, out var cached) && cached == projectRootElement)
Evaluation\ProjectRootElementCacheBase.cs (12)
23internal delegate void StrongCacheEntryRemovedDelegate(object sender, ProjectRootElement projectRootElement); 28internal delegate ProjectRootElement OpenProjectRootElement(string path, ProjectRootElementCacheBase cache); 45internal abstract ProjectRootElement Get(string projectFile, OpenProjectRootElement loadProjectRootElement, 49internal abstract void AddEntry(ProjectRootElement projectRootElement); 51internal abstract void RenameEntry(string oldFullPath, ProjectRootElement projectRootElement); 53internal abstract ProjectRootElement TryGet(string projectFile); 55internal abstract ProjectRootElement TryGet(string projectFile, bool? preserveFormatting); 63internal abstract void DiscardAnyWeakReference(ProjectRootElement projectRootElement); 70internal virtual void OnProjectRootElementDirtied(ProjectRootElement sender, ProjectXmlChangedEventArgs e) 90protected void RaiseProjectRootElementAddedToCacheEvent(ProjectRootElement rootElement) 104internal ProjectRootElementCacheAddEntryEventArgs(ProjectRootElement element) 112internal readonly ProjectRootElement RootElement;
Evaluation\ProjectXmlChangedEventArgs.cs (2)
34internal ProjectXmlChangedEventArgs(ProjectRootElement projectXml, string unformattedReason, string formattingParameter) 47public ProjectRootElement ProjectXml { get; private set; }
Evaluation\PropertyTrackingEvaluatorDataWrapper.cs (2)
181public void RecordImport(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated, SdkResult sdkResult) => _wrapped.RecordImport(importElement, import, versionEvaluated, sdkResult); 182public void RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated) => _wrapped.RecordImportWithDuplicates(importElement, import, versionEvaluated);
Evaluation\SimpleProjectRootElementCache.cs (13)
28private readonly ConcurrentDictionary<string, ProjectRootElement> _cache; 32_cache = new ConcurrentDictionary<string, ProjectRootElement>(StringComparer.OrdinalIgnoreCase); 36internal override ProjectRootElement Get( 50private ProjectRootElement GetFromCache(string projectFile) 52if (_cache.TryGetValue(projectFile, out ProjectRootElement projectRootElement)) 60private ProjectRootElement GetFromOrAddToCache(string projectFile, OpenProjectRootElement loadFunc) 64ProjectRootElement rootElement = loadFunc(key, this); 76internal override void AddEntry(ProjectRootElement projectRootElement) 84internal override void RenameEntry(string oldFullPath, ProjectRootElement projectRootElement) 89internal override ProjectRootElement TryGet(string projectFile) 94internal override ProjectRootElement TryGet(string projectFile, bool? preserveFormatting) 117internal override void DiscardAnyWeakReference(ProjectRootElement projectRootElement) 128internal override void OnProjectRootElementDirtied(ProjectRootElement sender, ProjectXmlChangedEventArgs e)
Instance\ProjectInstance.cs (21)
317ProjectRootElement xml = ProjectRootElement.OpenProjectOrSolution(projectFile, globalProperties, toolsVersion, buildParameters.ProjectRootElementCache, true /*Explicitly Loaded*/); 331public ProjectInstance(ProjectRootElement xml) 348public ProjectInstance(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, ProjectCollection projectCollection) 367public ProjectInstance(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, string subToolsetVersion, ProjectCollection projectCollection) 543private ProjectInstance(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, string subToolsetVersion, ProjectCollection projectCollection, 619internal ProjectInstance(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, int visualStudioVersionFromSolution, ProjectCollection projectCollection, ISdkResolverService sdkResolverService, int submissionId) 634internal ProjectInstance(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, ILoggingService loggingService, int visualStudioVersionFromSolution, ProjectCollection projectCollection, ISdkResolverService sdkResolverService, int submissionId) 651ProjectRootElement xml = ProjectRootElement.OpenProjectOrSolution(projectFile, globalProperties, toolsVersion, buildParameters.ProjectRootElementCache, false /*Not explicitly loaded*/); 661internal ProjectInstance(ProjectRootElement xml, IDictionary<string, string> globalProperties, string toolsVersion, BuildParameters buildParameters, ILoggingService loggingService, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, int submissionId) 933/// Create a <see cref="ProjectRootElement"/> based ProjectInstance. 935/// <param name="rootElement">The <see cref="ProjectRootElement"/> to evaluate the ProjectInstance from.</param> 937public static ProjectInstance FromProjectRootElement(ProjectRootElement rootElement, ProjectOptions options) 1927ProjectRootElement import, 1945void IEvaluatorData<ProjectPropertyInstance, ProjectItemInstance, ProjectMetadataInstance, ProjectItemDefinitionInstance>.RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated) 2368public ProjectRootElement ToProjectRootElement() 2370ProjectRootElement rootElement = ProjectRootElement.Create(); 3097ProjectRootElement projectRootElement = new( 3175ProjectRootElement xml,
Instance\ProjectTargetInstance.cs (1)
467internal ProjectTargetElement ToProjectTargetElement(ProjectRootElement rootElement)
ObjectModelRemoting\ConstructionObjectLinks\ProjectElementContainerLink.cs (2)
47public abstract ProjectElementContainer DeepClone(ProjectRootElement factory, ProjectElementContainer parent); 58public static ProjectElementContainer DeepClone(ProjectElementContainer xml, ProjectRootElement factory, ProjectElementContainer parent) => ProjectElementContainer.DeepClone(xml, factory, parent);
ObjectModelRemoting\ConstructionObjectLinks\ProjectElementLink.cs (4)
56public abstract ProjectRootElement ContainingProject { get; } 120/// Facilitate remoting to remote <see cref="ProjectElement.CreateNewInstance(ProjectRootElement)"/>. 122public abstract ProjectElement CreateNewInstance(ProjectRootElement owner); 133public static ProjectElement CreateNewInstance(ProjectElement xml, ProjectRootElement owner) => ProjectElement.CreateNewInstance(xml, owner);
ObjectModelRemoting\ConstructionObjectLinks\ProjectRootElementLink.cs (40)
14/// Allow for creating a local representation to external object of type <see cref="ProjectRootElement"/> 19/// Access to remote <see cref="ProjectRootElement.Version"/>. 24/// Access to remote <see cref="ProjectRootElement.HasUnsavedChanges"/>. 29/// Access to remote <see cref="ProjectRootElement.TimeLastChanged"/>. 34/// Access to remote <see cref="ProjectRootElement.LastWriteTimeWhenRead "/>. 39/// Access to remote <see cref="ProjectRootElement.DirectoryPath"/>. 44/// Access to remote <see cref="ProjectRootElement.FullPath"/>. 49/// Access to remote <see cref="ProjectRootElement.ProjectFileLocation"/>. 54/// Access to remote <see cref="ProjectRootElement.Encoding"/>. 59/// Access to remote <see cref="ProjectRootElement.RawXml"/>. 64/// Access to remote <see cref="ProjectRootElement.PreserveFormatting"/>. 69/// Facilitate remoting the <see cref="ProjectRootElement.CreateChooseElement"/>. 74/// Facilitate remoting the <see cref="ProjectRootElement.CreateImportElement"/>. 79/// Facilitate remoting the <see cref="ProjectRootElement.CreateItemElement(string)"/>. 84/// Facilitate remoting the <see cref="ProjectRootElement.CreateItemElement(string, string)"/>. 89/// Facilitate remoting the <see cref="ProjectRootElement.CreateItemDefinitionElement"/>. 94/// Facilitate remoting the <see cref="ProjectRootElement.CreateItemDefinitionGroupElement"/>. 99/// Facilitate remoting the <see cref="ProjectRootElement.CreateItemGroupElement"/>. 104/// Facilitate remoting the <see cref="ProjectRootElement.CreateImportGroupElement"/>. 109/// Facilitate remoting the <see cref="ProjectRootElement.CreateMetadataElement(string)"/>. 114/// Facilitate remoting the <see cref="ProjectRootElement.CreateMetadataElement(string, string)"/>. 119/// Facilitate remoting the <see cref="ProjectRootElement.CreateOnErrorElement"/>. 124/// Facilitate remoting the <see cref="ProjectRootElement.CreateOtherwiseElement"/>. 129/// Facilitate remoting the <see cref="ProjectRootElement.CreateOutputElement"/>. 134/// Facilitate remoting the <see cref="ProjectRootElement.CreateProjectExtensionsElement"/>. 139/// Facilitate remoting the <see cref="ProjectRootElement.CreatePropertyGroupElement"/>. 144/// Facilitate remoting the <see cref="ProjectRootElement.CreatePropertyElement"/>. 149/// Facilitate remoting the <see cref="ProjectRootElement.CreateTargetElement"/>. 154/// Facilitate remoting the <see cref="ProjectRootElement.CreateTaskElement"/>. 159/// Facilitate remoting the <see cref="ProjectRootElement.CreateUsingTaskElement(string, string, string, string, string)"/>. 164/// Facilitate remoting the <see cref="ProjectRootElement.CreateUsingTaskParameterGroupElement"/>. 169/// Facilitate remoting the <see cref="ProjectRootElement.CreateUsingTaskParameterGroupElement"/>. 174/// Facilitate remoting the <see cref="ProjectRootElement.CreateUsingTaskBodyElement"/>. 179/// Facilitate remoting the <see cref="ProjectRootElement.CreateWhenElement"/>. 184/// Facilitate remoting the <see cref="ProjectRootElement.CreateProjectSdkElement"/>. 189/// Facilitate remoting the <see cref="ProjectRootElement.Save(Encoding)"/>. 194/// Facilitate remoting the <see cref="ProjectRootElement.Save(TextWriter)"/>. 199/// Facilitate remoting the <see cref="ProjectRootElement.ReloadFrom(string, bool, bool?)"/>. 204/// Facilitate remoting the <see cref="ProjectRootElement.ReloadFrom(XmlReader, bool, bool?)"/>. 209/// Facilitate remoting the <see cref="ProjectRootElement.MarkDirty"/>.
ObjectModelRemoting\DefinitionObjectsLinks\ProjectLink.cs (1)
24public abstract ProjectRootElement Xml { get; }
ObjectModelRemoting\LinkedObjectFactory.cs (2)
119public ResolvedImport Create(ProjectImportElement importingElement, ProjectRootElement importedProject, int versionEvaluated, SdkResult sdkResult, bool isImported) 128public ProjectRootElement Create(ProjectRootElementLink link)
Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost (2)
Build\ProjectBuildManager.cs (2)
146var xml = MSB.Construction.ProjectRootElement.Create(xmlReader, _projectCollection);
Microsoft.DotNet.Arcade.Sdk (2)
src\SaveItems.cs (2)
31var project = ProjectRootElement.Create();
Microsoft.DotNet.Cli.Utils (6)
Extensions\MSBuildProjectExtensions.cs (6)
41public static ProjectItemGroupElement? LastItemGroup(this ProjectRootElement root) 46public static ProjectItemGroupElement FindUniformOrCreateItemGroupWithCondition(this ProjectRootElement root, string projectItemElementType, string framework) 65public static ProjectItemGroupElement? FindExistingUniformItemGroupWithCondition(this ProjectRootElement root, string projectItemElementType, string framework) 75public static IEnumerable<ProjectItemElement> FindExistingItemsWithCondition(this ProjectRootElement root, string framework, string include) 80public static bool HasExistingItemWithCondition(this ProjectRootElement root, string framework, string include) 85public static IEnumerable<ProjectItemElement> GetAllItemsWithElementType(this ProjectRootElement root, string projectItemElementType)
Microsoft.DotNet.ProjectTools (10)
VirtualProjectBuilder.cs (10)
30/// Prevents the virtual project's <see cref="ProjectRootElement"/> from being garbage collected 34/// would fail to find the <see cref="ProjectRootElement"/> in the cache and try to load it from disk, 37private ProjectRootElement? _projectRootElement; 287out ProjectRootElement projectRootElement, 300(string ProjectFileText, ProjectInstance ProjectInstance, ProjectRootElement ProjectRootElement)? lastProject = null; 441(ProjectInstance, ProjectRootElement) CreateProjectInstanceNoEvaluation( 465var projectRoot = CreateProjectRootElement(projectFileText, projectCollection); 484ProjectRootElement CreateProjectRootElement(string projectFileText, ProjectCollection projectCollection) 488var projectRoot = ProjectRootElement.Create(xmlReader, projectCollection);
NuGet.CommandLine.XPlat (9)
IVirtualProjectBuilder.cs (2)
32ProjectRootElement CreateProjectRootElement(string entryPointFilePath, ProjectCollection projectCollection); 34void SaveProject(string entryPointFilePath, ProjectRootElement projectRootElement);
Utility\MSBuildAPIUtility.cs (7)
414ProjectRootElement directoryBuildPropsRootElement = GetDirectoryBuildPropsRootElement(project); 430internal static ProjectRootElement GetDirectoryBuildPropsRootElement(Project project) 434ProjectRootElement directoryBuildPropsRootElement = project.Imports.FirstOrDefault(i => i.ImportedProject.FullPath.Equals(directoryPackagesPropsPath, PathUtility.GetStringComparisonBasedOnOS())).ImportedProject; 1061private (ProjectRootElement, bool isVirtual) TryOpenProjectRootElement(string filename) 1068var element = VirtualProjectBuilder.CreateProjectRootElement(fullPath, ProjectCollection.GlobalProjectCollection); 1074return (ProjectRootElement.Open(filename, ProjectCollection.GlobalProjectCollection, preserveFormatting: true), false); 1110public void Save(ProjectRootElement projectRootElement)