Microsoft.Build
Event that is fired when a project is added to the ProjectRootElementCache of this project collection.
Raised when a contained by this instance is directly changed.
Raised when state is changed on this instance.
Raised when a contained by this instance is changed.
Initializes a new instance of the class.
Override Equals so that identical fields imply equal objects.
The element location to compare to this element location.
Returns if the objects are equal; otherwise, returns .
Get reasonable hash code.
Returns .
Location of element.
Returns .
Appends the element as the last child of this project container.
The project element to be appended.
Inserts the element after the element.
The project element to be inserted.
The project element to be inserted after.
Inserts the element before the element.
The project element to be inserted.
The project element to be inserted before.
Prepends the element as the first child of this project container.
The project element to be prepended.
Removes all the children, if any, from this project container.
Removes a element from this project container.
The project element to be removed.
Adds a new import after the last import in this import group.
The project to import.
Returns the new import.
Adds metadata to this item definition. Appends the metadata to any existing metadata.
Name of the metadata.
Metadata to be added.
Returns the modified metadata.
Adds a new item definition after the last child in this item definition group.
Element name of item to be added.
Returns the new item definition.
Adds metadata to this item. Appends the metadata to any existing metadata.
Name of metadata.
Metadata to be added.
Returns the modified metadata.
Adds a new item to the item group. Items are ordered first by item element name, and then by the Include attribute.
Item element name of the item to be added.
Include attribute of the item to be added.
Returns the new item element.
Adds a new item with metadata to the item group. Items are ordered first by item element name, and then by the Include attribute.
Item element name of the item to be added.
Include attribute of the item to be added.
Metadata to be added.
Returns the new item element.
Appends a new property to the property group.
The property name.
The property value.
Returns the new property.
Updates the value of the given property in the property group.
The name of the property to be updated.
The new property value.
Returns the updated property.
Adds a project import to this project.
The project to be imported.
Returns the added project import.
Creates an import group at the end of this project.
Returns the import group created at the end of this project.
Adds an item to this project.
The item type of the item to be added.
The Include value of the item to be added.
Returns the added item.
Adds an item with metadata to this project.
The item type of the item to be added.
The Include value of the item to be added.
The metadata to be added.
Returns the added item.
Adds an item definition to this project.
The item type of the item definition to be added.
Returns the added item definition.
Adds an item definition group to this project.
Returns the added item definition group.
Creates and adds an item group to this project.
Returns the added item group.
Updates or adds a property to this project.
The name of the property to be updated or added.
The value of the property to be updated or added.
Returns the updated or added property.
Adds a new property group to this project.
Returns the added property group.
Adds a target to the project.
The name of the target to be added.
Returns the added target.
Adds a UsingTask Element (MSBuild) to the project.
The task name.
The file path to the assembly.
The name of the assembly to load.
Returns the added UsingTask element.
Creates and initializes an in-memory, empty ProjectRootElement instance and adds it to the global project collection.
Returns the new project root.
Creates and initializes an in-memory, empty ProjectRootElement instance and adds it to the specified project collection.
The project collection to be added to.
Returns the new project root.
Creates and initializes an in-memory, empty ProjectRootElement instance and adds it to the global project collection. The new project root is initialized from data found at the specified file path.
The file path to the data used for initialization.
Returns the new project root.
Creates and initializes an in-memory, empty ProjectRootElement instance and adds it to the specified project collection. The new project root is initialized from data found at the specified file path.
The file path to the data used for initialization.
The project collection to be added to.
Returns the new project root.
Creates and initializes an in-memory, empty ProjectRootElement instance and adds it to the global project collection. The new project root is initialized from data read from the specified XmlReader.
The XML reader used for initialization.
Returns the new project root.
Creates and initializes an in-memory, empty ProjectRootElement instance and adds it to the specified project collection. The new project root is initialized from data read from the specified XmlReader.
The XML reader used for initialization.
The project collection to be added to.
Returns the new project root.
Creates a Choose Element (MSBuild).
A object.
Creates an Import Element (MSBuild).
The project to be imported.
Returns the created Import element.
Creates an import group.
Returns the import group.
Creates an item definition.
The item type of the item definition.
Returns the item definition.
Creates an item definition group.
Returns the item definition group.
Creates an item.
The item type of the item.
Returns the item.
Creates an item with the specifed Include value.
The item type of the item.
The Include value of the item.
Returns the item.
Creates an item group.
Returns the item group.
Creates a metadata node with the specified name.
The name of the metadata.
Returns the metadata node.
Creates a metadata node with the specified name and value.
The name of the metadata.
The value of the metadata.
Returns the metadata element.
Creates an OnError Element (MSBuild).
The targets to execute if a task fails.
Returns the OnError element.
Creates an Otherwise Element (MSBuild). Caller must add it to the location of choice in the project.
Returns the Otherwise element.
Creates an Output Element (MSBuild).
The name of the task's output parameter.
The item that receives the task's output parameter value.
The property that receives the task's output parameter value.
Returns the Output element.
Creates a ProjectExtensions Element (MSBuild).
Returns the ProjectExtensions element.
Creates a property.
The name of the property.
Returns the property.
Creates a property group.
Returns the property group.
Creates a target.
The name of the target.
Returns the target.
Creates a task.
The name of the task.
Returns the task.
Creates a task to be referenced by a UsingTask Element (MSBuild).
The string to evaluate.
The body to add.
Returns the task.
Adds a UsingTask Element (MSBuild) to the project.
The task name.
The file path to the assembly.
The name of the assembly to load.
Returns the UsingTask element.
Adds a UsingTask Element (MSBuild) to the project.
The task name.
The file path to the assembly.
The name of the assembly to load.
Optional runtime specifier.
Optional architecture specifier.
Returns the UsingTask element.
Creates a parameter for use in a UsingTask Element (MSBuild) parameter group.
The name of the UsingTask element.
Stores outputs from the task in the project file.
A user-defined task parameter that contains the parameter value as its value.
The type of the parameter.
Returns the parameter.
Creates a parameter group for a UsingTask Element (MSBuild).
Returns the parameter group.
Creates a When Element (MSBuild) with a specified Condition attribute.
The value of the Condition attribute.
Returns the When element.
Initializes a project root in the global project collection by loading data from the specified file path.
The file path to the data.
Returns the initialized project root.
Initializes a project root in the specified project collection by loading data from the specified file path.
The file path to the data.
The project collection containing the project to be initialized.
Returns the initialized project root.
Saves the project, if modified, to the file system.
Saves the project to the specified text writer, whether modified or not.
The text writer to write the project to.
Saves the project, if modified or if the file path to storage has changed.
The file path to the project in storage.
Saves the project, if modified or if the file path to storage has changed. Uses the specified character encoding..
The file path to the project in storage.
The character encoding used to save the project.
Saves the project, if modified, using the specified character encoding.
The character encoding used to save the project.
Gets the project root in the global project collection that was loaded into memory from the specified file path. or null if it is not currently in memory.
The path of the ProjectRootElement, cannot be null.
Returns the project root. Returns null if no project was loaded into memory from the specified file path.
Gets the project root in the specified project collection that was loaded into memory from the specified file path. or null if it is not currently in memory.
The path of the ProjectRootElement, cannot be null.
The project collection to search for the project root.
Returns the project root. Returns null if no project was loaded into memory from the specified file path.
Adds an item group after the last child.
Returns the added item group.
Adds a property group after the last child.
Returns the added property group.
Adds a task to this target after any existing task.
The name of the task to add.
Returns the added task.
Adds an Output item after the last child.
The name of the task which outputs to the item.
The item type of the new item whose value is set to the output of the task.
Returns the added Output item.
Adds a conditioned Output item to this task after the last child.
The name of the parameter.
The item type of the item.
The condition of the parameter.
Returns the added conditioned Output item.
Adds an Output property to this task after the last child.
The name of the parameter.
The name of the property.
Returns the added Output property.
Adds a conditioned Output property to this task after the last child.
The name of the parameter.
The name of the property.
The condition of the property.
Returns the added conditioned Output property.
Gets the value of the parameter with the specified name.
The name of the parameter.
Returns the value of the parameter with the specified name. If no parameter by that name exists in the task, returns an empty string.
Removes all parameters from the task. Does not remove any ContinueOnError and/or Condition attributes.
Removes any parameter on this task with the specified name. If no parameter by that name exists in the task, does nothing.
The name of the parameter to remove.
Updates or adds a parameter on this task
The name of the parameter to update or add.
The value of the parameter.
Adds a new ParameterGroup element to this inline task.
Returns the new parameter group.
Adds a new TaskBody element to this inline task.
A flag which, if true, expands the item and property values in the task body. This flag is true by default.
The body of the task as a string.
Returns the new task body.
Adds a parameter to this parameter group.
The name of the parameter to be added.
The new parameter.
Adds a parameter to this parameter group, using the given name, type, and attributes.
The name of the parameter to be added.
The value of the Output attribute.
The value of the Required attribute.
The type of the parameter.
Returns the new parameter.
Private entry point called from islands. Must be public so that the islands can invoke it. Called on debugger worker thread.
The thread calling the entry point.
Releases all resources used by the current instance of the class.
Constructs an empty project using the global project collection global properties and default tools version.
Constructs an empty project and evaluates it using the given project root and the global project collection global properties and default tools version.
ProjectRootElement to use for evaluation.
Constructs an empty project and evaluates it using the given project root and with the given global properties and given tools version.
The project root to use for evaluation.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
Constructs a project and evaluates it using the given project root and with the given global properties and given tools version.
The project root to use for evaluation.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
The project collection the project is added to.
Constructs a project and evaluates it using the given project root and with the given global properties, given tools version, and given load settings.
The project root to use for evaluation.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
The project collection the project is added to. May not be null.
The load settings to use for evaluation.
Constructs a project and evaluates it using the given project root and with the given global properties, tools and sub-toolset versions, project collection, and load settings.
The project root to use for evaluation.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
Sub toolset version to evaluate with. May be null.
The project collection the project is added to. May not be null.
The load settings to use for evaluation.
Constructs an empty project using the given project collection global properties and default tools version.
The project collection that the new project is added to.
Constructs an empty project, to be evaluated with the given project collection and with the given global properties and given tools version.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
The tools version used to evaluate the project. May be null.
The project collection the new project will be added to.
Constructs a project and evaluates it from the given source project file and with the global project collection global properties and default tools version.
The source project file to be evaluated.
If the evaluation fails.
Constructs a project and evaluates it from the given source project file and with the given global properties and given tools version.
The path to the source project file to be evaluated.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
Constructs a project and evaluates it from the given source project file and with the given global properties and given tools version.
The path to the source project file to be evaluated.
The global properties. May be null.
The tools version. May be null.
The project collection the project is added to. May not be null.
Constructs a project and evaluates it from the given source project file and with the given global properties, given tools version, and given load settings.
The path to the source project file to be evaluated.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
The tools version. May be null.
The project collection the project is added to. May not be null.
The load settings to use for evaluation.
Constructs a project and evaluates it from the given source project file and with the given global properties, tools and sub-toolset versions, project collection, and load settings.
The path to the source project file to be evaluated.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
The tools version. May be null.
The sub toolset version. May be null.
The project collection the project is added to. May not be null.
The load settings to use for evaluation.
Constructs a project and evaluates the source code from the given XML reader. The source code is evaluated with the global project collection global properties and default tools version.
Xml reader to read project source code from.
Constructs a project and evaluates the source code from the given XML reader. The source code is evaluated with the given global properties and given tools version.
Xml reader to read project source code from.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
Constructs a project and evaluates the source code from the given XML reader. The source code is evaluated with the given global properties and given tools version.
Xml reader to read project source code from.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
The project collection the project is added to. May not be null.
Constructs a project and evaluates the source code from the given XML reader. The source code is evaluated with the given global properties and given tools version.
Xml reader from which to read project source code.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
The project collection the project is added to. May not be null.
The load settings to use for evaluation.
Constructs a project and evaluates the source code from the given XML reader. The source code is evaluated with the given global properties, tools and sub-toolset versions, project collection, and load settings.
Xml reader to read project source code from.
Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.
Tools version to evaluate with. May be null.
Sub Toolset version to evaluate with. May be null.
The project collection the project is added to. May not be null.
The load settings to use for evaluation.
Adds an item with no metadata to the project.
The item type of the added item.
Include attribute of the item to be added.
Returns the added item.
Adds an item with the given metadata to the project.
The item type of the added item.
Include attribute of the item to be added.
The metadata of the added item.
Returns the added item.
Adds an item with no metadata to the project. Makes no effort to see if an existing wildcard would already match the new item, unless it is the first item in an item group. Makes no effort to locate the new item near similar items.
The item type to be added.
The unevaluated Include attribute to be added to the item.
Returns a list of the project items added.
Adds an item with metadata to the project. Metadata may be null, indicating no metadata. Makes no effort to see if an existing wildcard would already match the new item, unless it is the first item in an item group. Makes no effort to locate the new item near similar items.
The item type to be added.
The unevaluated Include attribute to be added to the item.
The metadata to be added.
Returns a list of the project items added.
Builds this project, using the default targets.
Returns true on success; false otherwise.
Builds this project, using the default targets and the given logger.
The logger to be used during the build.
Returns true on success; false otherwise.
Builds this project, using the default targets and the given loggers.
An enumerator over all loggers to be used during the build.
Returns true on success; false otherwise.
Builds this project, using the default targets and the given loggers and remote loggers.
The loggers to be used during the build.
The remote loggers to be used during the build.
Returns true on success; false otherwise.
Builds this project, building the given target.
The target to be built.
Returns true on success; false otherwise.
Builds this project, building the given target and using the given loggers.
The target to be built.
The loggers to be used during the build.
Returns true on success; false otherwise.
Builds this project, building the given target and using the given loggers and remote loggers.
The target to be built.
The loggers to be used during the build.
The remote loggers to be used during the build.
Returns true on success; false otherwise.
Builds this project, building the given targets.
An array of targets to be built.
Returns true on success; false otherwise.
Builds this project, building the given targets and using the given loggers.
The targets to be built.
The loggers to be used during the build.
Returns true on success; false otherwise.
Builds this project, building the given targets and using the given loggers and remote loggers.
The targets to be built.
The loggers to be used during the build.
The remote loggers to be used during the build.
Returns true on success; false otherwise.
Creates a project instance based on this project, but completely disconnected from it.
Returns the project instance.
Creates a project instance based on this project, but completely disconnected from it.
Determines whether created project instance is immutable and whether it contains a look up table to improve performance.
Returns the project instance.
Evaluates the given string by expanding items and properties. The string is evaluated as if it were found at the very end of the project file.
The string to be evaluated.
Returns the evaluated string.
Gets evaluated, escaped value of the Include attribute of the provided items.
The item to be evaluated and escaped.
Returns the evaluated, escaped value of the Include attribute of the provided items.
Gets the evaluated, escaped value of the Include attribute of the provided item definition.
The item definition to be evaluated and escaped.
Returns the value of the Include attribute.
Gets all the items in the project of the given item type. If there are none, returns an empty list. Use AddItem or RemoveItem to modify items in this project.
The item type to be retrieved.
Returns all the items in the project of the given item type. Returns an empty list if there are no items with the given item name.
Gets all items that have the given evaluated Include attribute.
The evaluated Include attribute.
Returns all items that have the given evaluated Include attribute.
Gets all the items in the project of the given type, whether or not their Condition attribute evaluates to true. This is a read-only list: use AddItem or RemoveItem to modify items in this project.
The item type to be retrieved.
Returns all the items in the project of the given type, whether or not their Condition attribute evaluates to true.
Gets an enumerator over all the elements in the "logical project". The logical project is defined as the unevaluated project obtained from the single MSBuild file that is the result of inlining the text of all imports of the original MSBuild project manifest file.
Returns an enumerator over all the elements in the "logical project".
Gets the escaped value of the metadatum with the provided name on the provided item.
The item whose metadata is to be escaped.
The name of the metadata to be escaped.
Gets the escaped value of the metadatum with the provided name on the provided item.
Gets the escaped value of the metadatum with the provided name on the provided item definition.
The item definition whose metadata is to be escaped.
The name of the metadata to be escaped.
Returns the escaped value of the metadatum with the provided name on the provided item definition.
Gets the escaped value of the provided metadatum.
The metadatum to be escaped.
Gets the escaped value of the provided metadatum.
Gets any property in the project that has the specified name.
The name of the property to retrieve.
Returns any property in the project that has the specified name. Returns null if no property of that name exists.
Gets the value of the given property in this project.
The name of the property whose value is retrieved.
Returns the value of the given property in this project. Return an empty string if no property of that name exists. Escape sequences are converted before returning the string.
Get the escaped value of the provided property.
The property to be escaped.
Returns the escaped value of the provided property.
Marks this project as modified.
Reevaluates the project to incorporate any changes.
Removes a global property and marks the project as modified.
The name of the global property to be removed.
Returns true if the value of the global property was set.
Removes an item from the project. The item to be removed must be present in the project, and must not originate from an imported file.
The item to be removed.
Returns true if the item is present in this evaluated project; otherwise false. Normally this method returns true, since if the requested item is not present, the method throws an exception. If the item is present only in the ItemsIgnoringCondition collection, however, the method returns false.
Removes all the given items from the project, unless they originate from an imported project.
The items to be removed.
Removes an property from the project. The property to be removed must be present in the project, and must not originate from an imported file.
The property to remove.
Returns true if the property is present in this evaluated project; otherwise false.
Saves the project to the file system, if modified, using the default character encoding.
Saves the project to the provided text writer, whether or not the project has been modified. Uses the character encoding of the text writer and marks the project as unmodified.
The text writer to save the project to.
Saves the project to the file system, if modified or if the path to the project source code changes, using the default character encoding.
The path to the project source code.
Saves the project to the file system, if modified or if the path to the project source code changes, using the given character encoding.
The path to the project source code.
The character encoding used to save the project.
Saves the project to the file system, if modified, using the given character encoding.
The character encoding used to save the project.
Saves a "logical" or "preprocessed" project file, that includes all the imported files as if they formed a single file.
The writer that saves the project file.
Sets a global property after the project has been evaluated. If the value changes, the project is marked to require reevaluation.
The name of the global property to set.
The new value of the global property.
Returns if the value changes, otherwise returns .
Sets or adds a property with the given name and value to the project. Overwrites the value of a property with the same name if it did not originate in an imported file.
The name of the property to set.
The new unevaluated value of the property.
Returns the property.
Creates a project collection with no global properties or loggers. The project collection toolset is initialized from the configuration file and registry.
Creates a project collection with no global properties or loggers. The project collection toolset is initialized from toolsets in the given locations.
The locations from which to load toolsets.
Instantiates a project collection with specified global properties, no loggers, and that reads toolset information from the configuration file and registry.
The default global properties to use. May be null.
Instantiates a project collection with specified global properties and loggers and using the specified toolset locations.
The default global properties to use. May be null.
The loggers to register. May be null.
The locations from which to load toolsets.
Creates a project collection with specified global properties, loggers, node count, and onlyLogCriticalEvents value. The project collection toolset is initialized from toolsets in the given locations.
The default global properties to use. May be null.
The loggers to register. May be null and specified to any build instead.
Any remote loggers to register. May be null and specified to any build instead.
The locations from which to load toolsets.
The maximum number of nodes to use for building.
If set to true, only critical events will be logged.
Adds a new toolset to the project collection. Replaces any existing toolset with the same tools version.
The toolset to be added.
Determines whether a toolset is defined for the given tools version.
The tools version to search for.
Returns true if there is a toolset defined for the given tools version; false otherwise.
Releases both managed and unmanaged resources. Called when a host no longer needs the project collection.
Releases both managed and unmanaged resources. Called when a host no longer needs the project collection.. Shuts down any logging services that the project collection owns and releases the logger thread.
If true, releases both managed and unmanaged resources; otherwise releases only unmanaged resources..
Converts special characters in a string to MSBuild escape format.
The string to be converted.
Returns the converted string.
Get any global property on the project collection that has the specified name.
The name of the property to be retrieved.
Returns any global property on the project collection that has the specified name; otherwise returns null.
Gets all projects whose project path matches the given path.
The path to a project file to be matched.
Returns all projects whose project path matches the given path.
Get the toolset with the specified tools version.
The tools version to match.
Returns the toolset with the specified tools version. Returns null if no toolset matching this tools version exists.
Evaluates a project from the source code in the given project file. The source code is evaluated with the global properties and tools version of this project collection.
The project file to evaluate.
If an existing project in the collection has already been evaluated from the given project file, the existing project is returned. Otherwise, a new project is created, evaluated, added to the project collection, and returned.
Evaluates a project from the source code read from the given project file. The source code is evaluated with the given global properties and tools version.
The project file to be evaluated.
The global properties to use. May be null, in which case the containing project collection's global properties will be used.
The tools version. May be null.
If an existing project in the collection has already been evaluated from the given project file, and with the given global properties and tools version, then the existing project is returned. Otherwise, a new project is created, evaluated, added to the project collection, and returned.
Evaluates a project from the source code read from the given project file. The source code is evaluated with the global properties of this project collection and the given tools version.
The project file to evaluate.
The tools version to use. May be null.
If an existing project in the collection has already been evaluated from the given project file, and with the given tools version, then the existing project is returned. Otherwise, a new project is created, evaluated, added to the project collection, and returned.
Evaluates a project from the source code read from the given XML reader. The source code is evaluated with the global properties and tools version of this project collection.
Xml reader to read project source code from.
Returns the new project.
Evaluates a project from the source code read from the given XML reader. The source code is evaluated with the given global properties and tools version.
Xml reader to read project from
The global properties to use. May be null in which case the containing project collection's global properties will be used.
The tools version. May be null.
Returns the new project.
Evaluates a project from the source code read from the given XML reader. The source code is evaluated with the global properties of this project collection and the given tools version.
Xml reader to read project source code from.
The tools version to use. May be null.
Returns the new project.
The root element which was added to the project collection.
The root element which was added to the project collection.
Adds the given remote loggers to the collection of remote loggers used for builds of projects in this collection.
The remote loggers to add. May be null.
Adds the given logger to the collection of loggers used for builds of projects in this collection.
The logger to add.
Adds the given loggers to the collection of loggers used for builds of projects in this collection.
The loggers to be added. May be null.
Removes all toolsets from the project collection.
Removes a global property from the set of default global properties.
The name of the default global property to remove.
Returns true if the global property is present before removal; false otherwise.
Removes a toolset from the project collection.
The toolset to be removed.
Returns true if the toolset is present before removal; false otherwise.
Sets the value of a property in the default set of global properties.
The name of the default global property to be added or set.
The new value of the default global property.
Attempts to remove a project from the collection.
The root element of the project to unload.
Returns true if the project was unloaded.
Converts escaped characters in a string to MSBuild characters with special meaning.
The string to be converted.
Returns the converted string.
Removes all projects in this project collection.
Removes a project root element from the project root cache.
The project root element to unload.
Thrown if the project root element to unload is still in use by a loaded project or its imports.
Removes the given project from the project collection.
The project to remove.
Removes all loggers from the collection of loggers used by project builds in this collection.
Gets the evaluated value of the given metadata for this item.
The name of the metadata whose value is retrieved.
Gets the evaluated value of the given metadata for this item. Returns null if no metadata exists with the given name.
Get the evaluated value of the given metadata for this item, including metadata originating from an item definition.
The name of the metadata whose value is retrieved.
Returns the evaluated value of the given metadata for this item, including metadata originating from an item definition. Returns an empty string if no metadata exists with the given name.
Determines whether metadata with the given name is defined on this item.
The name of the metadata to be searched for.
Returns true if metadata with the given name is defined on this item; false otherwise.
Removes any metadata with the given name.
The name of the metadata to remove.
Returns true if metadata with the given name exists before removal; false otherwise.
Renames the item to the given name.
The new name of the item.
Adds metadata with the given name and unevaluated value to the item.
The name of the metadata to add.
The unevaluated value of the metadata to add.
Returns the new metadata. If metadata with the given name already exists, returns this metadata.
Get any metadata in the item definition with the given name.
The name of the metadata to retrieve.
Get any metadata in the item definition with the given name. Returns null if no metadata exists with that name.
Get the value of any metadata in the item that has the specified name.
The name of the item whose metadata value is to be retrieved.
Returns the value of any metadata in the item that has the specified name; otherwise returns null.
Sets the value of the given metadata in the item definition.
The name of the metadata to set.
The new unevaluated value of the metadata.
Returns the metadata with the given name.
Compares this project metadata with the given project metadata for equality.
The project metadata to be compared to.
Returns true if the project metadata are equal; false otherwise.
Compares this project property with the given project property for equality.
The project property to be compared to
Returns true if the project properties are equal; false otherwise.
Creates a toolset with the given tools version and tools path. Global, reserved, and environment properties are taken from the given project collection.
Name of the toolset
Path to this toolset's tasks and targets
The project collection from which to obtain the properties.
The path to search for msbuild overridetasks files.
Creates a toolset with the given tools version and tools path. Global, reserved, and environment properties are taken from the given project collection.
Name of the toolset.
Path to this toolset's tasks and targets.
Properties that should be associated with the Toolset. May be null, in which case an empty property group will be used.
The project collection from which to obtain the properties.
The set of sub toolsets to add to this toolset.
The path to search for msbuild overridetasks files. The set of sub-toolsets to add to this toolset
Creates a toolset with the given tools version, tools path, and build properties. Global, reserved, and environment properties are taken from the given project collection.
Name of the toolset
Path to this toolset's tasks and targets
Properties that should be associated with the Toolset. May be null, in which case an empty property group will be used.
The project collection from which to obtain the properties.
The path to search for msbuild overridetasks files.
Creates the sub toolset version to be used with this toolset.
Returns the sub toolset version to be used with this toolset.
Creates the sub toolset version to be used with this toolset.
Set of global properties to use to create the sub toolset version. May be null.
The solution version to use to create the sub toolset version.
Returns the sub toolset version.
Gets property specified by the given property name and sub toolset version.
The name of the property.
The sub toolset version of the sub toolset. May be null
Returns the property specified, if it is found, otherwise returns null.
Creates a BuildAborted exception.
Protected constructor used for (de)serialization.
The error information.
The error context.
Creates a BuildAborted exception.
The error message.
Constructs a BuildAbortedException with an additional message attached and an inner exception.
The error message.
The inner exception.
ISerializable method which must be overridden because Exception implements this interface.
The error information.
The error context.
Default constructor.
Operation is invalid.
Creates an instance of this exception using the specified error message.
The error message.
Operation is invalid.
Creates an instance of this exception using the specified error message and inner exception.
The error message.
The inner exception.
Operation is invalid.
ISerializable method which we must override since Exception implements this interface If we ever add new members to this class, we'll need to update this.
The error information.
The error context.
Default constructor.
Creates an instance of this exception using the specified error message.
The error message.
Creates an instance of this exception using the specified error message and inner exception.
The error message.
The inner exception.
Creates an instance of this exception using rich error information.
The invalid project file (can be empty string).
The invalid line number in the project (set to zero if not available).
The invalid column number in the project (set to zero if not available).
The end of a range of invalid lines in the project (set to zero if not available).
The end of a range of invalid columns in the project (set to zero if not available).
Error message for exception.
Error sub-category that describes the error (can be null).
The error code (can be null).
The F1-help keyword for the host IDE (can be null).
ISerializable method which we must override since Exception implements this interface If we ever add new members to this class, we'll need to update this.
The error information.
The error context.
Basic constructor.
Basic constructor.
The error information.
The error context.
Basic constructor.
The error message.
Basic constructor.
The error message.
The inner exception.
Constructor that takes an MSBuild error code
The error message.
The error code.
Constructor that takes an MSBuild error code
The error message.
The error code.
The inner exception.
ISerializable method which we must override since Exception implements this interface If we ever add new members to this class, we'll need to update this.
The error information.
The error context.
Gets a new build manager without specifying a name.
Creates a new unnamed build manager.
The host for the build manager.
Prepares the BuildManager to receive build requests.
The build parameters. May be null.
Thrown if a build is already in progress.
Submits a lone build request and blocks until results are available.
Build parameters.
Build request data.
Returns the build result.
Thrown if a build is already in progress.
Submits a build request and blocks until the results are available.
Build request.
Returns the build result.
Thrown if StartBuild has not been called or if EndBuild has been called.
Cancels all outstanding submissions asynchronously.
Dispose of the build manager.
Signals that no more build requests are expected (or allowed) and that the BuildManager may clean up.
Thrown if there is no build in progress.
Finalize the building manager.
Gets a matching ProjectInstance from the BuildManager cache of previously built projects.
The project for which an instance should be retrieved.
Returns a matching ProjectInstance from the BuildManager cache of previously built projects. If none exist, a new project instance will be created from the specified project.
Submits a build request to the current build but does not start it immediately. Allows the user to perform asynchronous execution or access the submission ID prior to executing the request.
Build request data.
Returns the submission that will be built.
Thrown if StartBuild has not been called or if EndBuild has been called.
Clears out all of the build manager cached information.
Creates build parameters.
Creates build parameters and initializes them from a project collection.
The ProjectCollection from which the BuildParameters should populate itself.
Creates a clone of this build parameters object.
Returns a clone of this build parameters object.
Gets a given toolset.
The toolset to retrieve.
Returns the toolset.
Constructs build request data for build requests based on project instances.
The instance to build.
The targets to build.
Constructs build request data for build requests based on project instances.
The instance to build.
The targets to build.
The host services to use, if any. May be null.
Constructs a BuildRequestData for build requests based on project instances.
The instance to build.
The targets to build.
The host services to use, if any. May be null.
The flags to use for the build.
Constructs a BuildRequestData for build requests based on project instances.
The instance to build.
The targets to build.
The host services to use, if any. May be null.
The flags to use for the build.
The list of properties to transfer from the project to any out of process node.
Constructs a BuildRequestData for build requests with a given project path.
The full path to the project file.
The global properties to use during evaluation of the project.
The tools version to use for the build. May be null.
The targets to build.
The host services to use, if any. May be null.
Constructs a BuildRequestData for build requests with a given project path.
The full path to the project file.
The global properties to use during evaluation of the project.
The tools version to use for the build. May be null.
The targets to build.
The host services to use, if any. May be null.
The flags to use for the build.
Creates the build result set.
Adds the results for the specified target to this build result set.
The target whose results are to be added.
The results for the target.
Determines if there are any results for the given target.
The target whose results are retrieved.
Returns true if results exist; false otherwise.
Merges the given results with this build result set.
The results to merge.
Starts a build request synchronously and waits until results are available.
Returns the build request.
The request has already been started or is already complete.
Starts a build request asynchronously and within the given context. Immediately returns control to the caller.
The callback method to call when the build submission is complete.
The context in which the build submission occurs.
The request has already been started or is already complete.
Creates a host service.
Gets the host service for the given task where the task appears within a target and project with the given names.
The name of the project file.
The name of the target.
The task name associated with the host service.
Returns the host service for the given task where the task appears within a target and project with the given names. If no host service exists, returns null.
Gets the node affinity for the given project file.
The project file associated with the node.
Returns the node affinity for the given project file.
Updates the host services table when a project is named or renamed.
The current path to the project file.
The new path to the project file.
Register a host service for the given task/target pair.
The project file containing the task/target pair.
The name of the target.
The name of the task.
The host service.
Sets the node affinity for the given project file.
The project file. If set to String.Empty, all projects will use the given node affinity. If set to null, all node affinities will be cleared.
The node affinity.
Unregister the project's host objects, if any and remove any node affinities associated with it.
The path to the project to unregister.
Constructor.
Starts up the node and processes messages until the node is requested to shut down.
The exception which caused shutdown, if any.
The reason for shutting down.
Creates a new project instance and initializes it from the given project root, using the default project collection.
The project root element.
Creates a new project instance and initializes it from the given project root, using the given global properties, tools version, and project collection.
The project root element
The global properties to use. May be null.
The tools version. May be null.
Project collection
Creates a new project instance and initializes it from the given project root, using the given global properties, tools version, and project collection
The project root element.
The global properties to use. May be null.
The tools version. May be null.
The sub toolset version. May be null.
Project collection.
Creates a new project instance and initializes it from the given project file, using the default project collection.
The name of the project file.
Creates a new project instance and initializes it from the given project file, using the given global properties, tools version, and the default project collection.
The name of the project file.
The global properties to use.
The tools version.
Creates a new project instance and initializes it from the given project file, using the given global properties, tools version, and project collection.
The name of the project file.
The global properties to use. May be null.
The tools version. May be null.
Project collection
Creates a new project instance and initializes it from the given project file, using the given global properties, tools version, sub toolset version, and project collection.
The name of the project file.
The global properties to use. May be null.
The tools version. May be null.
The sub toolset version. May be null.
Project collection.
Adds an item with no metadata to the project.
The item type of the item to be added.
The evaluated Include attribute of the item.
Returns the new item.
Adds an item with the given metadata to the project.
The item type of the item to be added.
The evaluated Include attribute of the item.
The metadata of the item.
Return the new item.
Builds the default targets of the project with loggers of the project collection.
Returns true if the build succeeds; false otherwise.
Builds the default targets of the project with the given loggers.
The loggers to use for the build. May be null.
Returns true if the build succeeds; false otherwise.
Builds the default targets of the project with the given loggers and remote loggers.
The loggers to use for the build. May be null.
The remote loggers to use for the build. May be null.
Returns true if the build succeeds; false otherwise.
Builds the given target of the project with the given loggers.
The target to build. May be null.
The loggers to use for the build. May be null.
Returns true if the build succeeds; false otherwise.
Builds the given target of the project with the given loggers and remote loggers.
The target to build. May be null.
The loggers to use for the build. May be null.
The remote loggers to use for the build. May be null.
Returns true if the build succeeds; false otherwise.
Builds the given targets of the project with the given loggers.
The targets to build. May be null.
The loggers to use for the build. May be null.
Returns true if the build succeeds; false otherwise.
Build a list of targets with specified loggers. Targets may be null. Loggers may be null.
List of targets to build. May be null.
Enumerated list of loggers to use for building targets.
Outputs of target builds.
Returns true on success, false on failure.
Builds the given targets of the project with the given loggers and remote loggers.
The targets to build. May be null.
The loggers to use for the build. May be null.
The remote loggers to use for the build. May be null.
Returns true if the build succeeds; false otherwise.
Builds the given targets with the given target outputs and with the given loggers and remote loggers.
The targets to build. May be null.
The loggers to use for the build. May be null.
The remote loggers to use for the build. May be null.
The target outputs.
Returns true if the build succeeds; false otherwise.
Creates an independent, deep clone of this project and everything in it. Clone has the same mutability as the original. Useful for compiling a single file or for keeping build results between builds.
Creates an independent, deep clone of this project.
Creates an independent, deep clone of this project and everything in it, with specified mutability. Useful for compiling a single file or for keeping build results between builds.
Flag indicating clone mutability.
Returns an independent, deep clone of this project, with specified mutability.
Evaluates the provided string as a condition by expanding items and properties, using the current items and properties available, then doing a logical evaluation.
The string to be expanded.
Returns true if the string evaluates to true; false otherwise.
Evaluates the provided string by expanding items and properties, using the current items and properties available.
The string to be expanded.
Returns the expanded string value.
Gets the evaluated, escaped value of the Include attribute of the provided item definition.
The item definition to be evaluated and escaped.
Returns the evaluated, escaped value of the Include attribute of the provided item definition.
Gets the evaluated, escaped value of the Include attribute of the provided item.
The item to be evaluated and escaped.
Returns the evaluated, escaped value of the Include attribute of the provided item.
Gets all the items in this project of the specified type. This is a read-only list.
The item type of the items to be retrieved.
Returns all the items in this project of the specified type. Returns an empty list if there are none.
Gets all the items in this project of the specified type and evaluated include value. This is a read-only list.
The item type of the items to be retrieved.
The evaluated include value of the items to be retrieved
Returns all the items in this project of the specified type and evaluated include value. Returns an empty collection if there are none.
Gets the escaped value of the metadatum with the provided name of the provided item definition.
The item definition to provide the metadatum value.
The name of the metadatum.
Returns the escaped value of the metadatum with the provided name of the provided item definition.
Gets the escaped value of the metadatum with the provided name on the provided item.
The item to provide the metadatum value.
The name of the metadatum.
Returns the escaped value of the metadatum with the provided name on the provided item.
Gets the escaped value of the provided metadatum.
The metadatum to be escaped.
Returns the escaped value of the provided metadatum.
Get the property with the given name.
The name of the property to retrieve.
Returns the property with the given name. Returns null if no property exists with that name.
Get the value of the property with the given name.
The name of the property whose value is to be retrieved.
Returns the value of the property with the given name. Returns an empty string if no property exists with that name. The value returned has no escaped character sequences.
Get the escaped value of the provided property.
The property to be escaped.
Returns the escaped value of the provided property.
Removes an item from the project, if present. Returns true if it was present, false otherwise.
The item to be removed.
Returns true if the item was present before removal; false otherwise.
Removes a property with the given name. Returns true if the property had a value (possibly empty string), otherwise false.
The name of the property to be removed.
Returns true if the property had a value (possibly an empty string) before removal; false otherwise.
Add a property with the specified name and value to the project. Overwrites any property with the same name already in the property collection.
The name of the property to add.
The evaluated value of the property to add.
Returns the new property.
Creates a ProjectRootElement from the contents of this ProjectInstance.
Returns a ProjectRootElement which represents this instance.
Replaces the project state , and with those from the specified .
The to update from.
Get any metadata in this item definition with the given name.
The name of the metadata to retrieve.
Returns any metadata in this item definition with the given name. Returns null if no metadata exists with this name.
Get the metadata with the given name, including metadata inherited from item definitions.
The name of the metadata.
Returns the metadata with the given name. Returns null if no metadata exists with that name.
Gets the value of the metadata with the given name, including metadata inherited from item definitions.
The name of the metadata.
Gets the value of the metadata with the given name, including metadata inherited from item definitions. Returns an empty string if no metadata exists with that name.
Determines whether the metadata with the given name is defined on this item (even if its value is empty string).
The name of the metadata.
Returns true if the metadata with the given name is defined on this item (even if its value is empty string); false otherwise.
ITaskItem implementation. Gets the collection of custom metadata.
The collection of custom metadata.
ITaskItem implementation. Copies the custom metadata entries to another item.
The item to copy the metadata entries to.
ITaskItem implementation. Gets the value of the specified metadata entry.
The name of the metadata entry.
The value of the metadata.
ITaskItem implementation. Adds or changes a custom metadata entry to the item.
Metadata name to be added or changed.
Metadata value to be added or changed.
ITaskItem2 implementation. Returns a clone of the metadata on this object. Values returned are in their original escaped form.
Returns the cloned metadata, with values' escaping preserved.
ITaskItem2 implementation. Allows the values of metadata on the item to be queried.
The metadata to be queried.
Returns the escaped metadata value.
ITaskItem2 implementation. Allows a piece of custom metadata to be set on the item. Assumes that the value passed in is unescaped, and escapes the value as necessary in order to maintain its value.
The metadata name.
The metadata value.
Removes metadata with the given name.
The metadata name.
Adds metadata with the given names and values. Overwrites any metadata with the same name already in the collection.
The metadata to add.
Add metadata with the given name and value. Overwrites any metadata with the same name already in the collection.
The name of the metadata to add.
The evaluated value of the metadata to add.
Returns the new metadata.
Gets a String that represents the current item.
Returns a String that represents the current item.
Copies the metadata to create a deep clone.
Returns the new metadata.
Compares this project metadata with the given project metadata for equality.
The project metadata to be compared to.
Returns true if the project metadata are equal; false otherwise.
Gets a string representation of this metadata.
Returns a string representation of this metadata.
Compares this project property with the given project property for equality.
The project property to be compared to.
Returns true if the project property are equal; false otherwise.
Gets a string representation for this property.
Returns a string representation for this property.
Abstract classes cannot be instantiated.
Abstract classes cannot be instantiated.
Constructs a logger.
Forward this event to the central logger.
The event to be forwarded.
Signs up the console logger to log the given build events.
The event source for build events.
Signs up the console logger for all build events.
The event source for build events.
The node count. Not used.
Called when the build engine is finished with this logger.
Creates a default logger.
Creates a logger instance with the given verbosity that logs to the default console.
The verbosity level.
Initializes the logger with alternate output handlers.
The verbosity level.
The write handler.
Sets the text color.
Resets the text color.
Applies a parameter to the logger.
The name of the parameter.
The value of the parameter.
Called when the build is finished.
The sender (should be null).
The event arguments.
Called when the build is started.
The sender (should be null).
The event arguments.
Called to log a custom event.
The sender of the event.
The event arguments.
Called to log an error event.
The sender of the event.
The event arguments.
Signs up the console logger for the given build event.
The available events.
Initializes the logger with the given event source and node count.
The event source.
The node count.
Called to log a message event.
The sender of the event.
The event arguments.
Called to log a project finished event.
The sender (should be null).
The event arguments.
Called to log a project started event.
The sender (should be null).
The event arguments.
Called when the build is finished.
Called to log a target finished event.
The sender (should be null).
The event arguments.
Called to log a target started event.
The sender (should be null).
The event arguments.
Called to log a task finished event.
The sender (should be null).
The event arguments.
Called to log a task started event.
The sender (should be null).
The event arguments.
Called to log a warning event.
The sender of the event.
The event arguments.
Creates a file logger.
Initializes the logger with the given event source.
The event source.
Initializes the logger with the given event source and node count.
The event source.
The node count.
Called when the build engine is finished with this logger.
Creates a file logger.
Signs up the console file logger for the given build events.
The available events.
Initializes a file logger in a multiprocessor environment.
The event source.
The node count.
Called when the build is finished.
Creates a forwarding logger.
The central logger.
The description for the forwarding logger.
Creates a logger description from the given data.
The class name of the logger.
The assembly name that implements the logger.
The assembly file that implements the logger.
Switch parameters for the logger.
The verbosity level.
Creates an ILogger instance from the data in this description.
Returns an ILogger instance from the data in this description.
The column number where this element exists in its file. The first column is numbered 1. Zero indicates "unknown location".
Returns .
The file from which this particular element originated. It may differ from the ProjectFile if, for instance, it was part of an import or originated in a targets file. If not known, returns empty string.
Returns .
The line number where this element exists in its file. The first line is numbered 1. Zero indicates "unknown location".
Returns .
The location in a form suitable for replacement into a message. Example: "c:\dir\proj.csproj (12,34)" Calling this creates and formats a new string. Only in rare cases should the location go within the message itself.
Returns .
Gets a nonexistent condition, which is implicitly true.
Returns a null.
This does not allow conditions, so it should not be called.
Returns .
Gets any Otherwise Element (MSBuild) child.
Returns any Otherwise child. Returns null if no Otherwise child exists.
Gets all the When Element (MSBuild) children.
Returns all the When children. There is always at least one When child.
All parent elements of this element, going up to the ProjectRootElement. None if this is a ProjectRootElement. None if this has not been attached to a parent yet.
Returns an enumerator over all parent elements. There are no parents elements if the project element is a ProjectRootElement or if this is not yet attached to a parent element.
Gets or sets the Condition value. It will return empty string IFF a condition attribute is legal but it’s not present or has no value. It will return null IFF a Condition attribute is illegal on that element. Removes the attribute if the value to set is empty. It is possible for derived classes to throw an if setting the condition is not applicable for those elements.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
Location of the "Condition" attribute on this element, if any. If there is no such attribute, returns null.
Returns .
ProjectRootElement (possibly imported) that contains this Xml. Cannot be null.
Returns the project root container that contains this project.
Gets or sets the Label value. Returns empty string if it is not present. Removes the attribute if the value to set is empty.
Returns the label. Returns an empty string if no label is present.
Location of the "Label" attribute on this element, if any. If there is no such attribute, returns null;
Returns .
Location of the corresponding Xml element. May not be correct if file is not saved, or file has been edited since it was last saved. In the case of an unsaved edit, the location only contains the path to the file that the element originates from.
Returns .
Next sibling element. May be null.
Returns the next sibling of this project element. Returns null if no next sibling exists.
Null if this is a ProjectRootElement. Null if this has not been attached to a parent yet.
Returns the project element container that contains this project.
Previous sibling element. May be null.
Returns the previous sibling of this project element. Returns null if no previous sibling exists.
Gets a recursive depth-first enumerator over all child elements.
Returns a recursive depth-first enumerator over all child elements.
Gets all child elements.
Returns all child elements.
Gets all child elements, starting from the last child.
Returns all child elements, starting from the last child.
Gets the number of child elements.
Returns the number of child elements.
Gets the first child element.
Returns the first child element. Returns null if no child element exists.
Gets the last child element.
Returns the last child element. Returns null if no child element exists.
Gets a nonexistent condition, which is implicitly true.
Returns a null.
This does not allow conditions, so it should not be called.
Returns .
Gets or sets the arbitrary XML content of this project extension.
Returns the arbitrary XML content of this project extension.
Gets or sets the content of the first sub-element with the given parameter.
The name of the sub-element.
Returns the contents of the element.
Gets or sets the Project attribute.
Returns the value of the Project attribute.
Location of the project attribute
Returns .
Gets all properties in this project import.
Returns all properties in this project import.
Gets the item definition element name.
Returns the item definition element name.
Gets all child metadata definitions.
Returns all child metadata definitions.
Gets all child item definitions.
Returns all child item definitions.
Gets or sets the Exclude attribute value.
Returns the Exclude attribute value. Returns an empty string if the attribute is not present.
Location of the exclude attribute
Returns .
Determines if this item has any child metadata elements.
Returns true if this item has child metadata elements; false otherwise.
Gets or sets the Include attribute value.
Returns the Include attribute value. Returns an empty string if the attribute is not present.
Location of the include attribute
Returns the include location
Gets the item element’s type.
Returns the item element type.
Gets or sets the KeepDuplicates value.
Returns the value of KeepDuplicates, or returns empty string if it is not present.
Gets or sets the Location of the KeepDuplicates attribute.
Returns the location of the KeepDuplicates attribute.
Gets or sets the KeepMetadata attribute value.
Returns the value of the KeepMetadata attribute or returns an empty string if it is not present.
Gets or sets the location of the KeepMetadata attribute.
Returns the location of KeepMetadata.
Gets all child metadata.
Returns all child metadata.
Gets or sets the Remove attribute value.
Returns the Remove attribute value. Returns an empty string if the attribute is not present.
Location of the remove attribute
Returns the remove attribute’s location.
Gets or sets the RemoveMetadata attribute.
Returns the RemoveMetadata value or returns an empty string if it is not present.
Gets or sets the location of the RemoveMetadata attribute.
Returns the RemoveMetadata attribute’s location.
Gets all child items.
Returns all child items.
Gets the metadata name.
Returns the metadata name.
Gets or sets the unevaluated metadata value.
Returns the unevaluated metadata value. Returns an empty string if the value is uninitialized.
Gets or sets the value of the ExecuteTargets attribute.
Returns the value of the ExecuteTargets attribute.
Location of the "ExecuteTargets" attribute on this element, if any. If there is no such attribute, returns null;
Returns .
Gets all child Choose elements.
Returns all child Choose elements.
Gets a nonexistent condition, which is implicitly true.
Returns a null.
This does not allow conditions, so it should not be called.
Returns .
Gets all child item groups.
Returns all child item groups.
Gets all child property groups.
Returns all child property groups.
Determines whether this output element represents an output item, as opposed to an output property.
Returns true if this output element represents an output item; false otherwise.
Determines whether this output element represents an output property, as opposed to an output item.
Returns true if this output element represents an output property; false otherwise.
Gets or sets the ItemType attribute value.
Gets or sets the ItemType attribute value Returns an empty string if the attribute is not present.
Location of the item type attribute, if any
Returns .
Gets or sets the PropertyName attribute value.
Gets or sets the PropertyName attribute value. Returns an empty string if the attribute is not present.
Location of the property name attribute, if any
Returns .
Gets or sets the TaskParameter attributevalue.
Gets or sets the TaskParameter attribute value. Returns an empty string if the attribute is not present.
Location of the task parameter attribute
Returns .
Gets the property name.
Returns the property name.
Gets or sets the unevaluated property value.
Returns the unevaluated property value. Returns an empty string if the value is uninitialized.
Gets all child properties.
Returns all child properties.
Gets all child properties, starting with the last child.
Returns all child properties, starting with the last child.
Gets all child Choose Element (MSBuild) in this project.
Returns all child Choose elements.
Gets null because the Condition attribute is nonexistent for this element and a nonexistent condition is implicitly true.
Returns a null.
Do not use. The Condition attribute is nonexistent for . Get throws an internal error.
Throws an internal error and returns null.
Gets or sets the value of the DefaultTargets attribute.
Returns the value of the DefaultTargets attribute. Returns an empty string if the attribute is not present.
Location of the DefaultTargets attribute on this element, if any.
Returns the DefaultTargets attribute location. If there is no such attribute, returns null.
Gets the directory path to the project file.
Returns the directory path, which is never null. If the project is not loaded from disk, returns the current-directory at the time the project was loaded.
Specifies the character encoding that the project file is to be saved in.
Returns the character encoding that the project file is to be saved in.
Gets the full path to the project file.
Returns the full path to the project file. If the project is not loaded from disk, returns null.
Determines whether the project has been modified since it was last loaded or saved.
Returns true if the project has been modified; false otherwise.
Gets all the child import groups in this project.
Returns all the child import groups in this project.
Gets all the child import groups in this project, starting with the last group.
Returns all the child import groups in this project, starting with the last group.
Gets all the child import elements in this project.
Gets all the child import elements in this project.
Gets or sets the value of the InitialTargets attribute.
Returns the InitialTargets attribute value. Returns an empty string if the attribute is not present.
Location of the InitialTargets attribute on this element, if any.
Returns InitialTargets attribute location. If there is no such attribute, returns null.
Gets all the child item definition groups in this project.
Returns all the child item definition groups in this project.
Gets all the child item definition groups in this project, starting with the last group.
Returns all the child item definition groups in this project, starting with the last group.
Gets all child item definitions in all item definition groups anywhere in this project.
Gets all child item definitions in all item definition groups anywhere in this project.
Gets all the child item groups in this project.
Returns all the child item groups in this project.
Gets all the child item groups present in this project, starting with the last group.
Returns all the child item groups present in this project, starting with the last group.
Gets all child items in this project.
Returns all child items in this project, even if they are contained by Choose elements.
Gets the last-write-time of the project file.
Gets the last-write-time of the project file.
The location of the originating file itself, not any specific content within it. If the file has not been given a name, this is an empty location. This is a legitimate case of having no location.
Returns the originating file location or an empty location.
Gets all the child properties in this project.
Returns all child properties in this project, even if they are contained by Choose elements.
Gets all the child property groups in this project.
Returns all the child property groups in this project.
Gets all the child property groups present in this project, starting with the last group.
Returns all the child property groups present in this project, starting with the last group.
Gets the XML content that represents this project.
Returns the XML content that represents this project as a string.
Gets all the child targets in this project.
Returns all the child targets in this project.
Gets the time that this project was last modified.
Returns the time that this project was last modified. Returns null if the project hasn't been modified since being created or loaded.
Gets or sets the value of the ToolsVersion attribute.
Returns the ToolsVersion attribute value. Returns an empty string if the attribute is not present.
The location of the ToolsVersion attribute on this element, if any.
Returns the ToolsVersion attribute location. If there is no such attribute, returns null.
Gets or sets the value of the TreatAsLocalProperty attribute.
Returns the TreatAsLocalProperty attribute value. Returns an empty string if the attribute is not present.
The location of the TreatAsLocalProperty attribute on this element, if any.
Returns the TreatAsLocalProperty attribute location. If there is no such attribute, returns null.
Gets all child UsingTask Element (MSBuild) in this project.
Returns all child UsingTask elements in this project.
Gets the version number of this object.
Returns the version number of this object.
Gets or sets the AfterTargets attribute value.
Returns the AfterTargets attribute value. Returns an empty string if the attribute is not present.
Location of the AfterTargets attribute
Returns .
Gets or sets the BeforeTargets attribute value.
Returns the BeforeTargets attribute value. Returns an empty string if the attribute is not present.
Location of the BeforeTargets attribute
Returns .
Gets or sets the DependsOnTargets attribute value. Returns empty string if it is not present. Removes the attribute if the value to set is empty.
Returns the DependsOnTargets attribute value. Returns an empty string if the attribute is not present.
Location of the DependsOnTargets attribute
Returns .
Gets or sets the Inputs attribute value. Returns empty string if it is not present. Removes the attribute if the value to set is empty.
Returns the Inputs attribute value. Returns an empty string if the attribute is not present.
Location of the Inputs attribute
Returns .
Gets all child item groups
Returns all child item groups.
Gets or sets the TrimDuplicateOutputs attribute value.
Returns the TrimDuplicateOutputs attribute value. Returns an empty string if the attribute is not present.
Location of the TrimDuplicateOutputs attribute
Returns .
Gets and sets the name of the this target.
Returns the name of the this target.
Location of the Name attribute
Returns .
Get all child OnError Element (MSBuild).
Returns all child OnError elements.
Gets or sets the Outputs attribute value. Returns empty string if it is not present. Removes the attribute if the value to set is empty.
Returns the Outputs attribute value. Returns an empty string if the attribute is not present.
Location of the Outputs attribute
Returns .
Gets all child property groups.
Returns all child property groups.
Gets or sets the Returns attribute value.
Returns the returns attribute value; null if the attribute is not present
Location of the Returns attribute
Returns .
Gets all child tasks.
Returns all child tasks.
Gets or sets the ContinueOnError attribute value.
Returns the ContinueOnError attribute value. Returns an empty string if the attribute is not present.
Location of the "ContinueOnError" attribute on this element, if any. If there is no such attribute, returns null;
Returns .
Gets or sets the architecture value for the task. Returns empty string if it is not present. Removes the attribute if the value to set is empty.
Returns .
Location of the "MSBuildArchitecture" attribute on this element, if any. If there is no such attribute, returns null;
Returns .
Gets or sets the runtime value for the task. Returns empty string if it is not present. Removes the attribute if the value to set is empty.
Returns .
Location of the "MSBuildRuntime" attribute on this element, if any. If there is no such attribute, returns null;
Returns .
Gets the name of this task.
Returns the name of this task.
Gets all Output Element (MSBuild) children.
Returns all Output element children.
Enumerable over the locations of parameters on the task. Condition and ContinueOnError, which have their own properties, are not included in this collection. If parameters differ only by case only the last one will be returned. Hosts can still remove the other parameters by using RemoveAllParameters().
Returns .
Gets all unevaluated parameters of this task.
Returns all unevaluated parameters of this task.
Gets null because the Condition attribute is nonexistent for this element and a nonexistent condition is implicitly true.
Returns a null.
Do not use. The Condition attribute is nonexistent for . Get throws an internal error.
Throws an internal error and returns null.
Gets the value of the Evaluate attribute.
Returns the value of the Evaluate attribute, which is either "true" or "false". Returns "true" if the attribute is not present.
Location of the Evaluate attribute on this element, if any.
Returns Evaluate attribute location. If there is no such attribute, returns the location of the element, instead of the location of the default attribute.
Gets or sets the unevaluated value of the contents of the inline task.
Returns the unevaluated inner XML content of the inline task. Returns an empty string if no inline task body is present.
Gets or sets the Architecture attribute of this inline task.
Returns the value of the Architecture attribute. Returns an empty string if the attribute is not present.
Location of the Architecture attribute on this element, if any.
Returns the Architecture attribute location. If there is no such attribute, returns null.
Gets the value of the AssemblyFile attribute, which selects the name of the assembly to load.
Returns the value of the AssemblyFile attribute. Returns an empty string if the attribute is not present.
Location of the AssemblyFile attribute on this element, if any.
Returns the AssemblyFile attribute location. If there is no such attribute, returns null.
Gets and sets the value of the AssemblyName attribute.
Returns the value of the AssemblyName attribute. Returns an empty string if the attribute is not present.
Location of the AssemblyName attribute on this element, if any.
Returns the AssemblyName attribute location. If there is no such attribute, returns null.
Gets any ParameterGroup element for this inline task.
Returns the parameter group. Returns null if no parameter group exists.
Gets or sets the Runtime attribute of this inline task.
Returns the value of the Runtime attribute. Returns an empty string if the attribute is not present.
Location of the Runtime attribute on this element, if any.
Returns the Runtime attribute location. If there is no such attribute, returns null.
Gets the inner XML content of this inline task.
Returns the inner XML content of the inline task. Returns null if no body exists.
Gets and sets the value of the TaskFactory attribute of this inline task.
Returns the value of the TaskFactory attribute. Returns an empty string if the attribute is not present.
Location of the TaskFactory attribute on this element, if any.
Returns the value of the TaskFactory attribute. Returns an empty string if the attribute is not present.
Gets and sets the value of the TaskName attribute.
Returns the value of the TaskName attribute. Returns an empty string if the attribute is not present.
Location of the TaskName attribute on this element, if any.
Returns the value of the TaskName attribute. Returns an empty string if the attribute is not present.
Gets a nonexistent condition, which is implicitly true.
Returns a null.
Do not use. The Condition attribute is nonexistent for this element. Get throws an internal error.
Throws an internal error and returns null.
Gets and sets the name of the parameter of this inline task.
Returns the name of the parameter.
Gets or sets the optional Output attribute of this inline task.
Returns the value of the Output attribute. Returns an empty string if the attribute is not present.
Location of the Output attribute on this element, if any.
Returns Output attribute location. If there is no such attribute, returns the location of the element, instead of the location of the default attribute.
Gets or sets the Type attribute of this inline task.
Returns the value of the Type attribute. Returns an empty string if the attribute is not present.
Location of the ParameterType attribute on this element, if any.
Returns ParameterType attribute location. If there is no such attribute, returns the location of the element, instead of the location of the default attribute.
Gets or sets the Required attribute
Returns the value of the Required attribute. Returns an empty string if the attribute is not present.
Location of the Required attribute on this element, if any.
Returns Required attribute location. If there is no such attribute, returns the location of the element, instead of the location of the default attribute.
Gets all child Choose Element (MSBuild).
Returns all child Choose elements.
Gets all child item groups.
Returns all child item groups.
Gets all child property groups.
Returns all child property groups.
Gets a nonexistent condition, which is implicitly true.
Returns a null.
This does not allow conditions, so it should not be called.
Throws an internal error and returns null.
Gets all parameters of this parameter group.
Returns all parameters.
Gets all item definition metadata encountered during evaluation.
Returns all item definition metadata encountered during evaluation. This does not include any elements whose conditions did not evaluate to true, nor any item definition metadata added since the last evaluation.
Gets an enumerator over all items encountered during evaluation. These are read during the third evaluation pass.
Returns an enumerator over all items encountered during evaluation. These are read during the third evaluation pass.
Gets all properties encountered during evaluation.
Returns all properties encountered during evaluation. This does not include any properties whose conditions did not evaluate to true, nor any properties added since the last evaluation.
Gets a collection of possible property values for properties used to evaluate conditions found on properties, property groups, imports, and whens.
Returns a collection of possible property values for properties used to evaluate conditions found on properties, property groups, imports, and whens. The collection is in canonical form. The name of the entry is the name of the property to be evaluated, and the value is a list of possible property values.
Gets the root directory for this project.
Returns the root directory for this project. The root directory is never null; in-memory projects use the current directory at the time of project load.
Gets or sets a flag the determines whether is temporarily disabled. This allows, for example, a global property to be set without the project getting marked dirty for reevaluation as a consequence.
Returns a flag the determines whether is temporarily disabled.
Gets a number that is incremented every time that project is re-evaluated.
Returns the incremented value.
Gets or sets the full path to the project source file.
Returns the full path to the project source file. Returns an empty string if the project was not loaded from disk.
Gets a dictionary of the global properties used for the evaluation of this project.
Returns a dictionary of the global properties used for the evaluation of this project.
Gets a list of all the files that contributed to the evaluation of this project.
Returns a list of all the files that contributed to the evaluation of this project.The name of each item is the Import element that caused the file to be imported. The value of each item is the project root of the imported project. Import elements whose Condition attribute evaluated to false are not included.
Gets a list of duplicate imports if an import was imported multiple times. However, only the first import was used in evaluation.
Returns a list of duplicate imports.
Gets or sets a property that selects whether the targets and tasks of this project can be built.
Returns true if the targets and tasks of this project can be built; false otherwise.
Gets a property that indicates whether this project has been modified so that it must be reevaluated.
Returns a property that indicates whether this project has been modified so that it must be reevaluated.
Gets a dictionary of item definitions in this project, keyed by item type.
Returns a dictionary of item definitions in this project, keyed by item type.
Gets an enumerator over all items in this project, ordered within groups of item types.
Returns an enumerator over all items in this project, ordered within groups of item types.
Gets an enumerator over all items in this project, ordered within groups of item types.
Returns an enumerator over all items in this project., ordered within groups of item types, including items whose conditions evaluate to false, or are contained within item groups whose condition evaluates to false.
Gets an enumerator over all item types in this project.
Returns an enumerator over all item types in this project. This is an ordered collection.
Gets the project collection which contains this project.
Returns the project collection which contains this project, which is never null.
The location of the originating file itself, not any specific content within it. If the file has not been given a name, this is an empty location. This is a legitimate case of having no location.
Returns the originating file location or an empty location.
Gets an enumerator over all properties in this project. This is an unordered collection.
Returns an enumerator over all properties in this project. Since properties are evaluated as they appear, this is an unordered collection.
Gets or sets a flag the determines whether ReevaluateIfNecessary is temporarily disabled. This is useful when the host expects to make a number of reads and writes to the project, and wants to temporarily sacrifice correctness for performance.
Returns a flag the determines whether ReevaluateIfNecessary is temporarily disabled.
Gets the value of the SubToolsetVersion attribute, if any. This value was combined with the value of the ToolsVersion attribute to determine the toolset properties for this project.
Returns the SubToolsetVersion attribute value. Returns an empty string if the attribute is not present.
Gets a dictionary of all targets in this project, keyed by target name.
Returns a dictionary of all targets in this project, keyed by target name. Overridden targets are not included in this collection. This dictionary is read-only.
Gets the tools version that this project was evaluated with, if any.
Gets the tools version that this project was evaluated with, if any.
Gets the root project associated with this project. Can never be null
Returns the root project associated with this project, which can never be null.
Gets the project that was marked dirty.
Never null.
Gets the number of projects currently loaded into this collection.
Returns the number of projects currently loaded into this collection.
Gets the default tools version of this project collection.
Returns the default tools version of this project collection, which is always defined.
Gets or sets a flag that determines whether is temporarily disabled on projects in this collection. This allows, for example, a global properties to be set without projects getting marked dirty for reevaluation as a consequence.
Returns a flag that determines whether is temporarily disabled.
Gets the global project collection object.
Returns the global project collection object. This is a singleton project collection with no global properties or loggers. Toolset information is obtained from the configuration file and registry.
Gets the read-only default global properties for all projects in this collection.
Returns the read-only default global properties for all projects in this collection.
Gets or sets an object that provides host services to tasks during builds of projects contained in the project collection.
Returns the host services object.
Gets or sets a property that selects by default whether the targets and tasks of projects in the project collection can be built.
Gets or sets a property that selects by default whether the targets and tasks of projects in this project collection can be built.
Gets all the projects currently loaded into this collection.
Returns all the projects currently loaded into this collection.
Gets all loggers that projects in this collection can use for their builds.
Returns all loggers that projects in this collection can use for their builds.
Gets or sets a switch that determines whether only critical events such as warnings and errors are logged.
If true, only critical events such as warnings and errors are logged; false otherwise.
Root element which was added to the project collection.
Returns .
Gets or sets a flag the determines whether ReevaluateIfNecessary is temporarily disabled on projects in this collection. This is useful when the host expects to make a number of reads and writes to projects, and wants to temporarily sacrifice correctness for performance.
Returns a flag the determines whether ReevaluateIfNecessary is temporarily disabled.
Gets the locations used to find the toolsets.
Returns the locations used to find the toolsets.
Gets the toolsets available to this project collection.
Returns the toolsets available to this project collection.
Gets the file version of the assembly file that contains the MSBuild engine.
Returns the file version of the assembly file that contains the MSBuild engine.
Gets the type of the change made to the .
Returns .
Gets an enumerator over all item metadata.
Returns an enumerator over all item metadata, which can never be null.
Gets the count of metadata for this item.
Returns the count of metadata for this item.
Gets the evaluated value of the Include attribute.
Returns the evaluated value of the Include attribute.
Determines if this item originates from an imported file.
Return true if this item originates from an imported file; false otherwise.
Gets or sets the type of this item.
Returns the item type.
Gets all the metadata for this item, including metadata originating from item definitions.
Returns all the metadata for this item, including metadata originating from item definitions.
Gets the count of metadata for this item, including any metadata originating from item definitions, and any built-in metadata.
Returns the count of metadata for this item, including any metadata originating from item definitions, and any built-in metadata.
Gets the project that contains this project item.
Returns the project that contains this project item.
Gets or sets the unevaluated value of the Include attribute.
Returns the unevaluated value of the Include attribute.
Gets the item element that is associated with this item.
Returns the item element that is associated with this item, which can never be null.
Gets the item type of this item definition.
Returns the item type of this item definition.
Gets an enumerator over all metadata for the item definition.
Returns an enumerator over all metadata for the item definition.
Gets the count of the metadata on the item definition.
Returns the count of the metadata on the item definition.
Gets the project that contains this item definition.
Returns the project that contains this item definition, which is never null.
Location of the Condition attribute.
Returns Condition attribute location.
Gets the evaluated metadata value.
Returns the evaluated metadata value, which is never null.
Determines if the metadata originated from an imported file.
Returns true if the metadata originated from an imported file; false otherwise.
Gets the item type of the containing item definition or item.
Returns the item type of the containing item definition or item.
Location of the element.
Returns the element location.
Gets the name of the metadata.
Returns the name of the metadata.
Gets the last metadata (from an item definition or item) that was overridden by this metadata during evaluation.
Returns the last metadata (from an item definition or item) whose value was overridden by this metadata during evaluation. Returns null if the metadata has not been overridden.
Gets the project that contains this metadata.
Returns the project that contains this metadata, which is never null.
Gets or sets the unevaluated metadata value.
Returns the unevaluated metadata value.
Gets the associated project metadata element.
Returns the associated project metadata element, which can never be null.
Gets the evaluated property value.
Returns the evaluated property value, which is never null.
Determines whether the property originated from the environment variables.
True if the property originated from an environment variable; false otherwise.
Determines whether the property is a global property.
True if the property is a global property; false otherwise.
Determines whether the property originates from an imported file.
Returns true if the property originates from an imported file and not from an environment variable, a global property, or a reserved property. Returns false otherwise.
Determines whether the property is a reserved property, for example 'MSBuildProjectFile'.
Returns true if the property is a reserved property; false otherwise.
Gets the name of the property.
Returns the name of the property.
Gets the last property that was overridden by this property during evaluation.
Returns the last property whose value was overridden by this property during evaluation. Returns null if the property has not been overridden.
Gets the project that contains this property.
Returns the project that contains this property, which is never null.
Gets or sets the unevaluated property value.
Returns the unevaluated property value.
Gets the associated property element. Backing XML property. Null only if this is a global, environment, or built-in property.
Returns the associated property element. Return null if this is a global or reserved property, or originates from an environment variable.
Gets the project root element which was just changed..
Never null.
Gets the reason for the change.
May be null.
Gets one of the imported projects.
Returns a representing the imported project.
Gets the element doing the import.
Returns the representing the element doing the import.
Gets a flag which determines if the importing element is itself imported.
Returns if the element is imported, otherwise.
Gets the properties that correspond to this particular sub toolset.
Returns the properties that correspond to this particular sub toolset.
Gets the Visual Studio version that corresponds to this sub toolset.
Returns the string containing the Visual Studio version for this sub toolset.
Gets the default sub toolset version for this toolset.
Returns the default sub toolset version.
Gets the optional properties associated with the toolset.
Returns the optional properties associated with the toolset.
Gets the set of sub toolsets associated with this toolset.
Returns the set of sub toolsets.
Gets a path to the tasks and targets of this toolset.
Returns a path to the tasks and targets of this toolset.
Gets the name of this toolset.
Returns the name of this toolset.
Gets the error code (if any) associated with the exception message.
Returns the error code as a string; returns a null string if no error code exists.
Gets the details of the build event (if any) that was being logged.
The build event args, or null.
Gets the error code associated with this exception's message (not the inner exception).
The error code string.
Gets the F1-help keyword associated with this error, for the host IDE.
The keyword string.
True if the exception occured during logger initialization
Gets the exception message not including the project file.
The error message string only.
Gets the invalid column number (if any) in the project.
The invalid column number, or zero.
Gets the last column number (if any) of a range of invalid columns in the project.
The last invalid column number, or zero.
Gets the last line number (if any) of a range of invalid lines in the project.
The last invalid line number, or zero.
Gets the error code (if any) associated with the exception message.
Error code string, or null.
Gets the error sub-category (if any) that describes the type of this error.
The sub-category string, or null.
Gets a flag that determines whether the exception has already been logged. Allows the exception to be logged at the most appropriate location, but continue to be propagated.
Returns a flag that determines whether the exception has already been logged.
Gets the F1-help keyword (if any) associated with this error, for the host IDE.
The keyword string, or null.
Gets the invalid line number (if any) in the project.
The invalid line number, or zero.
Gets the exception message including the affected project file (if any).
The complete message string.
Gets the file (if any) associated with this exception. This may be an imported file.
Project filename/path string, or null.
The MSBuild error code corresponding with this exception, or null if none was specified.
Gets the singleton instance of the Build Manager.
Returns the singleton instance of the Build Manager.
Gets the environment variables which were set when this build was created.
Returns environment variables set when build was created.
Gets or sets the desired thread priority for building.
Returns the thread priority for building
Gets or sets the name of the culture to use during the build.
Returns the culture.
Gets or sets the default tools version for the build.
Returns the tools version.
Gets or sets a switch that specifies whether the build should emit a detailed summary at the end of the log.
Returns the value of a switch that specifies whether the build should emit a detailed summary at the end of the log
Gets or sets the flag determining whether to use the in process node.
Returns the flag.
Gets or sets a flag determining whether out-of-process nodes should persist after the build and wait for further builds.
Returns the flag.
Gets an immutable collection of environment properties.
Returns an immutable collection of environment properties.
Gets or sets the collection of forwarding logger descriptions.
Returns the collection of forwarding logger descriptions.
Gets or sets an immutable collection of global properties.
Returns an immutable collection of global properties.
Gets or sets a service that allows the host to provide additional control over the build process.
Returns the host service.
Gets or sets a switch that enables or disables legacy threading semantics.
Returns a switch that enables or disables legacy threading semantics; true if enabled, false otherwise.
Gets or sets the collection of loggers to use during the build.
Returns the collection of loggers to use during the build.
Gets or sets the flag determining whether the build logs the input parameters.
Returns the flag.
Gets or sets the flag determining whether the build logs the task parameters.
Returns the flag.
Gets or sets the maximum number of nodes this build may use.
Returns the maximum number of nodes this build may use.
Gets or sets the amount of memory the build should limit itself to using, in megabytes.
Returns the amount of memory the build should limit itself to using, in megabytes.
Gets or sets the location of the build node executable.
Returns the location of the build node executable.
Gets or sets a flag that determines if non-critical logging events should be discarded.
Returns a flag that determines if non-critical logging events should be discarded.
Gets or sets a switch that specifies whether the build should reset the configuration and results caches.
Returns a switch that specifies whether the build should reset the configuration and results caches; true if the caches should be reset, false otherwise.
Gets or sets a switch specifying if the operating environment, such as the current directory and environment, should be saved and restored between project builds and task invocations.
Returns a switch indicating whether the operating environment should be saved and restored between project builds and task invocations; true if the environment should be saved, false otherwise.
Gets or sets the flag determining whether to shut down the in process node when the build finishes. The default is .
Returns the flag.
Gets or sets locations to search for toolsets.
Returns locations to search for toolsets.
Gets all of the toolsets.
Returns all of the toolsets.
Gets or sets the name of the UI culture to use during the build.
Returns the name of the UI culture to use during the build.
Gets or sets a switch that specifies whether synchronous logging is used when there is only a single process.
Returns a switch that specifies whether synchronous logging is used when there is only a single process; if true, use synchronous logging, otherwise use asynchronous logging.
Gets or sets the tools version to use for the build.
Returns the tools version to use for the build.
Gets or sets additional flags for this build request.
Returns the build request flags.
Gets the global properties to use for this build request.
Returns the global properties to use for this build request.
Gets the host service for this build.
Returns the host service for this build.
Gets of sets the path to the project file for this build.
Returns the path to the project file for this build.
Gets or sets project instance for this build.
The project instance, which may be null.
Gets the list of properties to transfer to an out of process node for the build.
Returns the list of properties.
Gets the names of the targets to build.
Returns the names of the targets to build.
Gets a flag indicating whether a circular dependency was detected.
Returns true if a circular dependency was detected; false otherwise.
Gets the configuration ID for this build result set.
Returns the configuration ID for this build result set.
Gets the exception generated for this build result set.
Returns the exception generated for this build result set. Returns false if no exception occurred.
Gets the build request id for this build result set.
Returns the build request id for this build result set.
Gets an indexer which can be used to get the build result for the given target.
The indexed target.
The build result for the indexed target.
Gets the build request ID of the originating node.
Returns the build request ID of the originating node.
Gets the overall result for this build.
Returns the overall result for this build.
Gets the global build request ID which issued the request leading to this build result set.
Returns the global build request ID which issued the request leading to this build result set.
Gets or sets state after the build.
Returns the object.
Gets an enumerator over all target results in this build result set.
Returns an enumerator over all target results in this build result set.
Gets the build submission which this build result set is associated with.
Returns the build submission which this build result set is associated with.
Gets or sets the asynchronous context provided to , if any.
Returns the asynchronous context provided to . Returns null if no context is provided.
Gets or sets the build manager this build submission is associated with.
Returns the build manager this build submission is associated with.
Gets or sets the result of the build.
Returns the result of the build.
Determines whether this build submission is complete.
Returns true if this build submission is complete; false otherwise.
Gets or sets an ID uniquely identifying this build submission.
Returns an ID uniquely identifying this build submission.
Gets a object that will be signalled when the build is complete.
Returns null until or returns, then returns the WaitHandle object.
Gets the exception generated when the target was built.
Returns the exception generated when the target was built. Return null if no exception occurred.
Gets the set of build items output by the target.
Returns the set of build items output by the target.
Gets the result code returned when the target was built.
Returns the result code returned when the target was built.
Gets or sets the list of default targets for this project.
Returns the list of default targets for this project.
Gets the project root directory. Used for evaluation of relative paths and setting the current directory during build. Is never null: projects not loaded from disk use the current directory from the time the build started.
Returns the project root directory, which is never null. Projects not loaded from disk return the current directory at the time the build was started.
Gets the full path to the project file. Used for logging.
Returns the full path to the project file. Returns null if the project was never named.
Gets the dictionary of global properties this project was evaluated with, if any.
Returns the dictionary of global properties this project was evaluated with.
Gets the list of initial targets for the project and all its imports, depth-first. These targets are built before any other targets.
Returns the list of initial targets for the project and all its imports, depth-first.
Gets a flag indicating that the project instance is immutable. This flag is set permanently when the instance is created.
Returns the flag.
Gets a read-only dictionary of the item definitions in the project, keyed by item type.
Returns a read-only dictionary of the item definitions in the project, keyed by item type.
Gets all items in this project.
Returns all items in this project.
Gets all item types in this project.
Returns all item types in this project.
Gets the location of the originating file itself. Never null.
Returns the location of the originating file. Never returns null.
Gets all properties in this project.
Returns all properties in this project.
Gets an enumerator over all targets in this project. This collection is read-only.
Returns an enumerator over all targets in this project.
Gets the tools version this project was evaluated with, if any.
Returns the tools version this project was evaluated with, if any.
Gets the item type of this item definition.
Returns the item type of this item definition.
Gets all the metadata for this item definition. This is a read-only collection.
Returns all the metadata for this item definition. If there is no metadata, returns empty collection.
Gets the number of pieces of metadata on this item definition.
Returns the number of pieces of metadata on this item definition.
Gets an enumerator over the metadata names for this item definition. This is a read-only collection.
Returns an enumerator over the metadata names for this item definition.
Gets or sets the Condition attribute of this project element.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
Location of the condition, if any
Returns .
Gets all child items of this item definition.
Returns all child items of this item definition.
Location of the original element
Returns .
Gets the unevaluated Condition attribute value.
Returns the unevaluated Condition attribute value.
Location of the condition attribute if any
Returns the location of the condition attribute.
Gets the unevaluated Exclude attribute value.
Returns the unevaluated Exclude attribute value.
Location of the exclude attribute, if any
Returns the location of the exclude attribute.
Gets the unevaluated Include attribute value.
Returns the unevaluated Include attribute value.
Location of the include attribute, if any
Returns the location of the include attribute.
Get the item type, for example "Compile".
Returns the item type, for example "Compile".
Gets the unevaluated KeepDuplicates value.
Returns the KeepDuplicates value.
Gets or sets the location of the KeepDuplicates attribute, if any.
Returns the location of the KeepDuplicates attribute.
Gets the unevaluated KeepMetadata attribute value
Returns the KeepMetadata value.
Gets the location of the KeepMetadata attribute, if any.
Returns the location of KeepMetadata.
Location of the element
Returns the element’s location.
Gets an ordered collection of unevaluated metadata on the item.
Returns an ordered collection of unevaluated metadata on the item.
Gets the unevaluated Remove attribute value.
Returns the unevaluated Remove attribute value.
Location of the remove attribute, if any
Returns the location of the remove attribute.
Gets the unevaluated RemoveMetadata value.
Returns the RemoveMetadata value.
Gets the location of the RemoveMetadata attribute, if any.
Returns the RemoveMetadata location.
Gets the unevaluated Condition attribute value.
Returns the unevaluated Condition attribute value.
Location of the condition attribute if any
Returns .
Location of the element
Returns .
Gets the name of this metadata.
Returns the name of this metadata.
Gets the unevaluated value of this metadata.
Returns the unevaluated value of this metadata.
Gets the number of pieces of metadata on this item.
Returns the number of pieces of metadata on this item.
Gets the evaluated Include attribute value.
Returns the evaluated Include attribute value, which may be empty string.
Gets the item type, for example "Compile".
Returns the item type, for example "Compile".
Gets an enumerator over the evaluated metadata of the item. This is a read-only collection.
Returns an enumerator over the evaluated metadata of the item.
Gets the number of metadata entries, including metadata inherited from item definitions.
Returns the number of metadata entries, including metadata inherited from item definitions
Gets all metadata names of this item, including metadata inherited from item definitions.
Returns all metadata names of this item, including metadata inherited from item definitions.
ITaskItem implementation. Gets or sets the item specification.
The item specification.
ITaskItem implementation. Gets the names of the metadata entries associated with the item.
The names of the metadata entries associated with the item.
ITaskItem2 implementation. Evaluated include value, escaped as necessary. May be empty string. Gets or sets the item include value e.g. for disk-based items this would be the file path.
Returns the item include value.
Gets the owning project.
Returns the owning project.
Gets or sets the evaluated value of the metadata.
Returns the evaluated value of the metadata, which is never null.
Gets the name of the metadata.
Returns the name of the metadata.
Gets the unevaluated Condition attribute value of this OnError element.
Returns the unevaluated Condition attribute value. Returns an empty string if the attribute is not present.
Location of the condition, if any
Returns .
Gets the unevaluated ExecuteTargets attribute value of this OnError element.
Returns the unevaluated ExecuteTargets attribute value, which may be an empty string.
Location of the execute targets attribute, if any
Returns .
Location of the element
Returns .
Gets or sets the Condition attribute of this property group.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
Gets the location of the Condition attribute.
Returns location of the Condition attribute.
Gets the location of the element itself.
Returns location of the element.
Gets all child properties in this property group.
Returns all child properties in this property group.
Gets or sets the unevaluated Condition attribute of this property.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
Gets the location of the Condition attribute.
Returns Condition attribute location.
Gets the location of the element itself.
Returns the element location.
Gets the name of this property.
Returns the name of this property.
Gets the unevaluated value of this property.
Returns the unevaluated value of this property.
Gets or sets the evaluated value of this property.
Returns the evaluated value of this property.
Returns true if this object is immutable; false otherwise. An immutable object cannot be made mutable.
Returns .
Gets the name of this property.
Returns the name of this property.
Gets the location of the AfterTargets attribute.
Returns the AfterTargets attribute location.
Gets the location of the BeforeTargets attribute.
Returns the BeforeTargets attribute location.
Gets a list of the children of this target. The build iterates through this to get each task to execute.
Returns a list of the children of this target.
Gets the unevaluated Condition attribute of this target element.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
Gets the location of the Condition attribute.
Returns the Condition attribute location.
Gets an unevaluated semicolon-delimited list of targets that this target depends on.
Returns an unevaluated semicolon-delimited list of targets that this target depends on. Returns an empty string if this target depends on no other targets.
Gets the location of the DependsOnTargets attribute.
Returns the DependsOnTargets attribute location.
Gets the full path to the file from which this target originated.
Returns the full path to the file from which this target originated. Returns an empty string if this target originated in a project that was not loaded and has never been given a path.
Gets the unevaluated inputs on this target element.
Returns the unevaluated inputs on this target element. Returns an empty string if this target has no inputs.
Gets the location of the Inputs attribute.
Returns the Inputs attribute location.
Gets an unevaluated condition which is used to delete duplicate outputs from this target.
Returns an unevaluated condition which is used to delete duplicate outputs from this target. Returns an empty string if there is no condition.
Gets the location of the KeepDuplicateOutputs attribute.
Returns the KeepDuplicateOutputs attribute location.
Gets the location of the element itself.
Returns the element location.
Gets the name of the target.
Returns the name of the target.
Gets a list of the children of this target that refer to OnError targets.
Gets a list of the children of this target that refer to OnError targets.
Gets the unevaluated outputs on this target element May be empty string.
Returns the unevaluated outputs on this target element Returns an empty string if there are no outputs.
Gets the location of the Outputs attribute.
Returns the Outputs attribute location.
Gets the unevaluated return values on the target element as a string.
Returns the unevaluated return values on the target element as a string. Returns an empty string or null, if no return value is specified.
Gets the location of the Returns attribute.
Returns the Returns attribute location.
Gets all the tasks that are immediate children of this target.
Returns all the tasks that are immediate children of this target.
Gets or sets the Condition attribute of this target.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
Gets the location of the Condition attribute.
Returns the Condition attribute location.
Gets the full path to the file from which this task originated.
Returns the full path to the file from which this task originated. Returns an empty string if the task originated in a project that was not loaded and has never been given a path.
Gets the location of the element itself.
Returns the element location.
Gets the unevaluated Condition attribute of this task.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
Location of the condition, if any
Returns .
Gets the unevaluated ContinueOnError attribute of the task.
Returns the unevaluated ContinueOnError attribute of the task. Returns an empty string if the attribute is not present.
Location of the ContinueOnError attribute, if any
Returns .
Location of the original element
Returns .
Unevaluated MSBuildArchitecture on the task. May be empty string.
Returns .
Location of the MSBuildArchitecture attribute, if any
Returns .
Unevaluated MSBuildRuntime on the task. May be empty string.
Returns .
Location of the MSBuildRuntime attribute, if any
Returns .
Gets the name of the task, possibly qualified, as it appears in the project.
Returns the name of the task, possibly qualified, as it appears in the project.
Gets an ordered set of the output property and item objects of this task.
Returns an ordered set of the output property and item objects of the task.
Gets an unordered set of the task parameter names and unevaluated values of this task.
Returns an unordered set of the task parameter names and unevaluated values of this task.
Gets the Condition attribute of this task.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
The location of the original Condition attribute, if any.
Returns location of the condition, or null.
Gets the location of the original element.
Returns the location of the original element.
Gets the location of the TaskParameter attribute.
Returns the TaskParameter location.
Gets the Condition attribute of this project element.
Returns the Condition attribute value. Returns an empty string if the attribute is not present.
Gets the location of the Condition attribute.
Returns the Condition attribute location.
Gets the item type that the outputs go into.
Returns the item type that the outputs go into.
Gets the location of the ItemType attribute.
Returns the ItemType attribute location.
Gets the location of the element itself.
Returns the element location.
Gets the property of this class to retrieve the outputs from.
Returns the property of this class to retrieve the outputs from.
Gets the location of the TaskParameter attribute.
Returns the TaskParameter attribute location.
Gets the Condition attribute of the output element.
Returns the Condition attribute of the output element.
Gets the location of the Condition attribute.
Returns the Condition attribute location.
Gets the location of the element itself.
Returns the element location.
Gets the name of the property that receives the output.
Returns the name of the property that receives the output.
Gets the location of the PropertyName attribute.
Returns the PropertyName attribute location.
Gets the property of the task class to retrieve the output from.
Returns the property of the task class to retrieve the output from.
Gets the location of the TaskParameter attribute.
Returns the TaskParameter attribute location.
Gets the exception which aborted this target, if any.
Returns the exception which aborted this target, if any.
Gets the items produced by this target.
Returns the items produced by this target.
Gets the result code for building this target.
Returns the result code for building this target.
Gets or sets a property that determines how a node logger to forwards messages to the central logger.
Returns a property that determines how a node logger to forwards messages to the central logger.
Gets or sets the ID of the node.
Returns the ID of the node.
Gets or sets a switch that determines whether to suppress the output of the errors and warnings summary at the end of a build.
Returns a switch that determines whether to suppress the output of the errors and warnings summary at the end of a build.
Gets or sets the level of detail to show in the event log.
Returns the level of detail to show in the event log.
Gets or sets a semicolon-delimited list of parameter key-value pairs.
Returns a semicolon-delimited list of parameter key-value pairs.
Gets or sets a switch that determines whether to suppress the display of errors and the warnings summary.
Returns a switch that determines whether to suppress the display of errors and the warnings summary.
Gets or sets a switch that determines whether to suppress the display of project headers.
Returns a switch that determines whether to suppress the display of project headers.
Gets or sets the level of detail to show in the event log.
Returns the level of detail to show in the event log.
Provides access to the write handler delegate so that it can be redirected if necessary (e.g. to a file).
Returns the write handler delegate.
Gets or sets a property that determines how a node logger to forwards messages to the central logger.
Returns a property that determines how a node logger to forwards messages to the central logger.
Gets or sets the ID of the node.
Returns the ID of the node.
Gets or sets a switch that determines whether to suppress the output of the errors and warnings summary at the end of a build.
Returns a switch that determines whether to suppress the output of the errors and warnings summary at the end of a build.
Gets or sets the level of detail to show in the event log.
Returns the level of detail to show in the event log.
Gets the central logger.
Returns the central logger.
Gets the forwarding logger description.
Returns the forwarding logger description.
Gets the string of logger parameters.
Returns the string of logger parameters. Returns null if there are no parameters.
Returns the verbosity level for this logger.
The location of an XML node in a file. Any editing of the project XML through the MSBuild API's will invalidate locations in that XML until the XML is reloaded.
Represents the Choose Element (MSBuild) in an MSBuild project.
Abstract base class for MSBuild construction object model elements.
Provides an abstract container class for project elements.
Represents the ProjectExtensions Element (MSBuild) in an MSBuild project. Project extensions can contain arbitrary XML content.
Represents an Import Element (MSBuild) in an MSBuild project.
Represents the ImportGroup element in an MSBuild project.
Represents an ItemDefinition element in an MSBuild project.
Represents an ItemDefinitionGroup Element (MSBuild) in an MSBuild project.
Represents an Item Element (MSBuild) in an MSBuild project.
Represents an ItemGroup Element (MSBuild) in an MSBuild project.
Represents a Metadata element in an MSBuild project.
Represents an OnError Element (MSBuild) in an MSBuild project.
Represents an Otherwise Element (MSBuild) in an MSBuild project.
Represents an Output Element (MSBuild) in an MSBuild project.
Represents a Property element in an MSBuild project.
Represents a PropertyGroup element in an MSBuild project.
Represents an MSBuild project, a targets file, or any other file that conforms to MSBuild project file schema. This class and its related classes allow a complete MSBuild project or targets file to be read and written.
Represents a Target Element (MSBuild) in an MSBuild project.
Represents a Task Element (MSBuild) in an MSBuild project.
Represents the body of an inline task.
Represents a UsingTask Element (MSBuild) in an MSBuild project. The UsingTask element is used both for inline tasks and precompiled tasks.
Represents a parameter of an inline task.
Represents a When Element (MSBuild) in an MSBuild project.
Represents the ParameterGroup of an inline task.
Manager for supporting debugging a state machine.
Executes the islands on a dedicated worker thread. The worker thread's physical callstack then maps to the interpreter's virtual callstack.
Represents a project with design time semantics. This class can load project files, edit items and properties and build projects.
Event arguments for the event.
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.
Handler to receive which project got added to the project collection.
The source of the event.
The event data.
Provides information about what project just got added to the project collection.
Event arguments for the event.
Properties or other mutable state associated with a project collection.
The property changed.
The toolsets changed.
The loggers changed.
The global properties changed.
The property changed.
The property changed.
The property changed.
The property changed.
The property changed.
Represents an evaluated design-time project item.
Represents an evaluated item definition for a particular item-type.
Flags for controlling the project load.
Normal load. This is the default.
Ignore nonexistent targets files when evaluating the project.
Indicates that imports including duplicate, but not circular, imports on the ImportsIncludingDuplicates property should be recorded
Indicates that an exception will be thrown if any circular imports are detected
Represents evaluated design-time metadata.
Represents an evaluated design-time property.
Event arguments for the event.
Encapsulates an import relationship in an evaluated project between a ProjectImportElement and the ProjectRootElement of the imported project.
Represents an aggregation of a set of properties that correspond to a particular sub toolset.
Represent an aggregation of a tools version (eg. "2.0"), tools path, and optional set of associated properties.
Flags for controlling the toolset initialization.
Do not read toolset information from any external location.
Read toolset information from the exe configuration file.
Read toolset information from the registry (HKLM\Software\Microsoft\MSBuild\ToolsVersions).
An exception representing the case where the build was aborted by request, as opposed to being unceremoniously shut down due to another kind of error exception.
This exception is used to wrap an unhandled exception from a logger. This exception aborts the build, and it can only be thrown by the MSBuild engine.
This exception is thrown whenever there is a problem with the user's XML project file. The problem might be semantic or syntactical. The latter would be of a type typically caught by XSD validation (if it was performed by the project writer).
Exception subclass that ToolsetReaders should throw.
This class is the public entry point for executing builds.
This class represents all of the settings which must be specified to start a build.
Encapsulates all of the data needed to submit a build request.
Flags providing additional control over the build request.
No flags.
When this flag is present, the existing ProjectInstance in the build will be replaced by this one.
When this flag is present, issued in response to this request will include .
When this flag is present and the project has previously been built on a node whose affinity is incompatible with the affinity this request requires, this build request ignores the project state (but not the target results) that was previously generated.
Represents the current result set for all of the targets that have produced results for a particular configuration.
Enumerated data indicating the build result of a target or a build request.
The target or request was a complete success.
The target or request failed in some way.
Represents a build request that has been submitted to the build manager for processing. The methods of this class may be used to execute synchronous or asynchronous build requests and to provide access to the results upon completion.
A callback function that receives notification when a build completes.
The submission that initiates the build.
Implementation of a host service that mediates access from the build to the host.
An interface representing the results for a specific target
An enumerated data type that determines where projects are built.
The project may only be scheduled on the in-proc node. This happens automatically if there is a host object or if a ProjectInstance was specified. A host may wish to specify it if they know a task depends explicitly on shared static data or other host-provided objects.
The project may only be scheduled on an out-of-proc node. A host may wish to specify this if it is known the project being built could contaminate the host environment (or the host contaminates the environment while a build is proceeding.)
The project may be scheduled anywhere.
Reasons for a node to shutdown.
The BuildManager sent a command instructing the node to terminate.
The BuildManager sent a command instructing the node to terminate, but to restart for reuse.
The communication link failed.
The NodeEngine caught an exception which requires the Node to shut down.
This class represents an implementation of an out-of-proc build node. This class is deprecated and has no alternative.
Represents a project instance.
Contains settings for controlling project instance creation.
Create project instance with no options.
Create immutable instance of project.
Create immutable instance of project with look up table that improves performance.
Represents an evaluated item definition for a particular item type, divested of all references to project source code.
Wraps an unevaluated itemgroup under a target. Immutable.
Wraps an unevaluated item under an itemgroup in a target. Immutable.
Wraps an unevaluated metadata under an item in an item group in a target. Immutable.
Wraps an evaluated item for build purposes.
Wraps an evaluated metadata for build purposes.
Wraps an OnError Element (MSBuild).
Wraps an unevaluated propertygroup under a target. Immutable.
Wraps an unevaluated property of a property group in a target. Immutable.
Wraps an evaluated property for build purposes. Instances of these properties are added and removed via methods on the ProjectInstance object.
Wraps a Target Element (MSBuild).
Abstracts the , and classes. This allows these types to be used in a single collection of target children
Wraps a Task Element (MSBuild).
Abstracts the base class for the TaskOutputItem and TaskOutputProperty classes. This allows them to be used in a single collection.
Wraps an output item element of a Task Element (MSBuild).
Represents an output property element of a Task Element (MSBuild).
Represents both the result code for building a single target and the overall build result.
The result code for a given target.
The target was skipped because its condition was not met.
The target successfully built.
The target failed to build.
Type of delegate used to reset console color.
Type of delegate used to set console color.
Text color.
Represents a logger that forwards events to a central logger (e.g ConsoleLogger) residing on the parent node.
Represents the default logger that outputs event data to the console (stdout).
This class creates a text file which will contain the build log for a node.
A specialization of the ConsoleLogger that logs to a file instead of the console.
Represents a central/forwarding logger pair used in multiprocessor logging.
Contains information about a logger as a collection of values that can be used to instantiate the logger and can be serialized to be passed between different processes.
Delegate used for writing a string to some location like the console window or the IDE build window.
The message to write.