Microsoft.Build.Evaluation Namespace

Contains types that the MSBuild object model uses to evaluate projects. Each project is associated with one or more project roots. For information, see MSBuild.

Classes

GlobResult

Data class representing a result from GetAllGlobs() and its overloads. This represents all globs found in an item include together with the item element it came from, the excludes that were present on that item, and all the Remove item elements pertaining to the Include item element.

MatchOnMetadataConstants
Project

Represents an evaluated project with design time semantics. Always backed by XML; can be built directly, or an instance can be cloned off to add virtual items/properties and build. Edits to this project always update the backing XML.

ProjectChangedEventArgs

Event arguments for the ProjectChanged event.

ProjectCollection

This class encapsulates a set of related projects, their toolsets, a default set of global properties, and the loggers that should be used to build them. A global version of this class acts as the default ProjectCollection. Multiple ProjectCollections can exist within an appdomain. However, these must not build concurrently.

ProjectCollection.ProjectAddedToProjectCollectionEventArgs

Event to provide information about what project just got added to the project collection.

ProjectCollectionChangedEventArgs

Event arguments for the ProjectCollectionChanged event.

ProjectItem

An evaluated design-time item

ProjectItemDefinition

An evaluated item definition for a particular item-type.

ProjectMetadata

An evaluated design-time metadatum. Parented either by a ProjectItemDefinition or a ProjectItem.

ProjectProperty

An evaluated design-time property

ProjectXmlChangedEventArgs

Event arguments for the ProjectXmlChanged event.

ProvenanceResult

Data class representing a result from GetItemProvenance(String) and its overloads.

SubToolset

Aggregation of a set of properties that correspond to a particular sub-toolset.

Toolset

Aggregation of a toolset version (eg. "2.0"), tools path, and optional set of associated properties. Toolset is immutable.

Structs

ResolvedImport

Encapsulates an import relationship in an evaluated project between a ProjectImportElement and the ProjectRootElement of the imported project.

Enums

MatchOnMetadataOptions
NewProjectFileOptions

Flags to control options when creating a new, in memory, project.

Operation

Enum that specifies how an item element references an item.

ProjectCollectionChangedState

Properties or other mutable state associated with a ProjectCollection.

ProjectLoadSettings

Flags for controlling the project load.

Provenance

Bit flag enum that specifies how a string representing an item matched against an itemspec.

ToolsetDefinitionLocations

Flags for controlling the toolset initialization.

Delegates

ProjectCollection.ProjectAddedEventHandler

Handler to receive which project got added to the project collection.