This topic has not yet been rated - Rate this topic

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.

  Class Description
Public class Project Represents a project with design time semantics. This class can load project files, edit items and properties and build projects.
Public class ProjectCollection 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 project collection.
Public class ProjectItem Represents an evaluated design-time project item.
Public class ProjectItemDefinition Represents an evaluated item definition for a particular item-type.
Public class ProjectMetadata Represents evaluated design-time metadata.
Public class ProjectProperty Represents an evaluated design-time property.
Public class Toolset Represent an aggregation of a tools version (eg. "2.0"), tools path, and optional set of associated properties.
  Structure Description
Public structure ResolvedImport Encapsulates an import relationship in an evaluated project between a ProjectImportElement and the ProjectRootElement of the imported project.
  Enumeration Description
Public enumeration ProjectLoadSettings Flags for controlling the project load.
Public enumeration ToolsetDefinitionLocations Flags for controlling the toolset initialization.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ
See also Microsoft.Build.Construction
I wanted to analyze some project files to confirm that they followed certain rules. Rules of the form "This type of element must have that type of condition." $0$0 $0 $0I first tried using Microsoft.Build.Evaluation.Project.ItemsIgnoringCondition but that didn't work - I couldn't examine the condition.$0 $0$0 $0 $0Turns out I needed Microsoft.Build.Construction.ProjectRootElement.Items to be able to examine what I wanted to see.$0 $0$0 $0 $0The Evaluation and Construction namespaces are both important, but they come at the project files from two different directions. Picking the right one for your problem is important.$0