Microsoft.Build.Engine Represents a single item in an MSBuild project. Initializes a new instance of the class based on an object. The property of the . The from which to create the property of the . Initializes a new instance of the class with the specified and property values. The property of the . The property of the . Creates a shallow copy of the . A copy of the . 2 Gets or sets the Condition attribute value of the item. The Condition attribute value of the item. Copies all item metadata on this to the specified . The to which to copy the item metadata. 2 Gets the number of custom attributes that are set on this item. An integer indicating how many custom attributes are set on this item. Gets all user-defined or custom attribute names. An containing string names for all of the user-defined or custom attributes. Gets or sets the Exclude attribute value of the item. Gets or sets the Exclude attribute value of the item. Gets the final specification of the item after all wildcards and properties have been evaluated. The final specification of the item after all wildcards and properties have been evaluated. Returns the value of the specified item metadata after after all item and property references have been evaluated. The value of the specified item metadata after after all item and property references have been evaluated. The item metadata name. Returns the value of the specified item metadata. The value of the specified item metadata. The item metadata name. Indicates whether the item has the specified item metadata. true if the item has the specified item metadata; otherwise, false. The item metadata name. Gets or sets the Include attribute that created the . The Include attribute that created the . Gets a value indicating whether the item was imported into the project. true if the item was imported into the project; otherwise, false. 2 Gets the number of metadata set on the item An integer representing the number of metadata items. Gets the names of metadata on the item, including pre-defined or reserved item-spec modifiers. An containing name strings of all metadata on the item. Gets or sets the name of the item collection to which the item belongs. The name of the item collection to which the item belongs. Removes the specified item metadata. The item metadata name. Assigns the specified value to the specified item metadata. The item metadata name. The item metadata value. Assigns the specified value to the specified item metadata, and optionally treats the metadata as a literal value. The item metadata name. The item metadata value. true to treat the metadata as a literal value by escaping all MSBuild special characters; otherwise, false. Represents a collection of objects. Initializes a new instance of the class. Adds a new with the specified and property values to the . The new . The property value to assign the new . The property value to assign the new . Adds a new with the specified and property values to the , allowing you to specify whether the property value is treated as a literal. The new . The property value to assign the new . The property value to assign the new . true to treat the parameter as a literal value; otherwise, false. Removes the property value and all objects from the . Creates a deep or shallow copy of the . A copy of the . true to create a deep copy of the ; otherwise, false. 2 Gets or sets the Condition attribute value of the item group. The Condition attribute value of the item group. Gets a value indicating the number of objects in the . An integer value representing the number of objects in the . Gets an enumerator that iterates through the . An for the entire . 2 Gets or sets a value indicating whether the item group was imported into the project. true if the item group was imported into the project; otherwise, false. 2 Gets or sets a object in this . A object in this . The zero-based index of the object to get or set. Removes the specified from the . The to remove. Removes the at the specified index from the . The zero-based index of the object to remove. 2 Copies the objects in the to a new array. A new array containing the objects copied from the . 2 Represents a collection of objects. Copies the collection to a compatible one-dimensional , starting at the specified index of the target array. The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. 2 Gets a value indicating the number of objects in the collection. An integer value representing the number of objects in the collection. Gets an enumerator that iterates through the collection. An for the entire . 2 Gets a value indicating whether access to the is synchronized (thread safe). true if access to the is synchronized (thread safe); otherwise, false. The default is false. 2 Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . 2 Represents a single property in an MSBuild project. Initializes a new instance of the class with the specified name and value. The property name. The property value. Creates a deep or shallow copy of the . A copy of the . true to create a deep copy of the ; otherwise, false. 2 Gets or sets the Condition attribute value of the property. Gets or sets the Condition attribute value of the property. Gets the final value of the property after all property evaluations have been performed. The final value of the property after all property evaluations have been performed. Gets or sets a value indicating whether the property was imported into the project. true if the property was imported into the project; otherwise, false. 2 Gets the property name. The property name. Converts a to a String. A String, whose contents are the same as the property of the parameter. The to convert to a string. 2 Returns the string that represents the property . The string that represents the property . Gets or sets the property value. The property value. Represents a collection of objects. Initializes a new instance of the class. Initializes a new PropertyGroup element in the specified project. The name of the Project in which to add the new PropertyGroup. Adds a new with the specified and to the . The new . The property value to assign the new . The property value to assign the new . Adds a new with the specified and to the . The new . The property value to assign the new . The property value to assign the new . true to treat the parameter as a literal value; otherwise, false. Removes the property value and all objects from the . Creates a deep or shallow copy of the . A copy of the . true to create a deep copy of the ; otherwise, false. 2 Gets or sets the Condition attribute value of the property group. The Condition attribute value of the property group. Gets a value indicating the number of objects in the . An integer value representing the number of objects in the collection. Gets an enumerator that iterates through the . An for the entire . 2 Gets or sets a value indicating whether the property group was imported into the project. true if the property group was imported into the project; otherwise, false. 2 Gets or sets a object in this . A object in this . The value of the to get or set. Removes the specified from the . The to remove. Removes the with the specified from the . The value of the to remove. Sets the condition for imported property groups. Changes are not persisted. 2 Sets the of the with the specified . The property value of the to set. The property value to assign the . Sets the of the with the specified . The property value of the to set. The property value to assign the . true to treat the parameter as a literal value; otherwise, false. Represents a collection of objects. Copies the entire collection to a compatible one-dimensional , starting at the specified index of the target array. The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. 2 Gets a value indicating the number of objects in the collection. An integer value representing the number of objects in the collection. Gets an enumerator that iterates through the . An for the entire . 2 Gets a value indicating whether access to the is synchronized (thread safe). true if access to the is synchronized (thread safe); otherwise, false. The default is false. 2 Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . 2 Specifies the settings for a build. Specifies that the build should run normally. Specifies that no important external state has changed and no previously built targets should be rebuilt. Represents a Task element in a project. Adds an Output element with the specified TaskParameter and ItemName attributes to the Task element. The value of the TaskParameter attribute of the Output element. The value of the ItemName attribute of the Output element. Adds an Output element with the specified TaskParameter and PropertyName attributes to the Task element. The value of the TaskParameter attribute of the Output element. The value of the PropertyName attribute of the Output element. Gets or sets the Condition attribute value of the Task element. The Condition attribute value of the Task element. Gets or sets the ContinueOnError attribute value of the Task element. The ContinueOnError attribute value of the Task element. Runs the task represented by this object. true if the method was successful; otherwise, false. Gets an array containing the parameter names passed to the task. An array containing the parameter names passed to the task. 2 Gets the value of the specified task parameter. The value of the specified task parameter. The parameter name. 2 Gets or sets the host object associated with the task. The host object associated with the task. 2 Gets the task name. The task name. Sets the value of the specified task parameter. The parameter name to set. The value to assign to . 2 Sets the value of the specified task parameter. The parameter name to set. The value to assign to . true to treat as a literal value; otherwise, false. 2 Gets the of the class that implements the task. The of the class that implements the task. Defines the type of delegate used to reset the console color. Defines the type of delegate used to set the console color. The text color. Represents the ConfigurableForwardingLogger, a pre-fabricated forwarding logger to be used when building projects on a multi-proc or multi-core system. For more information, see Writing Multi-Processor-Aware Loggers. Initializes a new instance of the class. Gets or sets whether the build engine allows node loggers to forward messages to the central logger. An object to forward the events. Forwards the specified event to the central logger. The event arguments. Enlists the console logger for all build events. The object to provide the build events. Enlists the console logger for all build events. The object to provide the build events. The node ID of the event source. Gets or sets the unique identifier (Node ID) to which the logger is attached. Gets or sets the parameters for the ConfigurableForwardingLogger. A string representing the logger parameters. Closes the configurable forwarding logger. Gets or sets the level of detail to show in the event log. a enumeration value. Implements the standard console logger that outputs event data to the console window during a build. Initializes a new instance of the class. Initializes a new instance of the class with the specified . The to apply to the logger. Initializes a new instance of the class with the specified , , and values. The to apply to the logger. The for the logger to use. The for the logger to use. The for the logger to use. Adds the specified parameter name and value to the logger. The parameter name to add to the logger. The parameter value to assign to the . Handles the event. The source of the event. A that contains the event data. 2 Handles the event. The source of the event. A that contains the event data. 2 Handles the event. The source of the event. A that contains the event data. 2 Handles the event. The source of the event. A that contains the event data. 2 Registers the logger for the specified events. The to register with the logger. Registers the logger for the specified events. The to register with the logger. The number of nodes to initialize. Handles the event. The source of the event. A that contains the event data. 2 Gets or sets the parameters passed to the . The parameters passed to the . Handles the event. The source of the event. A that contains the event data. 2 Handles the event. The source of the event. A that contains the event data. 2 Gets or sets a value indicating whether the logger will display a summary of errors and warnings. true if the logger will display a summary of errors and warnings; otherwise, false. Stops the logger and releases all resources. Gets or sets a value indicating whether the logger will display messages when new projects are started during the build. true to display messages when new projects are started during the build; otherwise, false. The default is true. 2 Handles the event. The source of the event. A that contains the event data. 2 Handles the event. The source of the event. A that contains the event data. 2 Handles the event. The source of the event. A that contains the event data. 2 Handles the event. The source of the event. A that contains the event data. 2 Gets or sets the level of the logger. The level of the logger. Handles the event. The source of the event. A that contains the event data. 2 Gets or sets to the delegate for the . The delegate for the . Represents a text file that contains the build log for a build node. Initializes a new instance of the class. Set by the build engine to allow a node loggers to forward messages to the central logger. An object to forward the events. Enlists the console logger for all build events. The object that provides the build events. Enlists the console logger for all build events. The object that provides the build events. The Node ID of the event source. Gets or sets the unique identifier (Node ID) of the node to which the forwarding logger is attached. Gets or sets the parameters for the DistributedFileLogger. A string representing the logger parameters. Closes the node file logger. Gets or sets the level of detail (a value) to display in the build event log. a enumeration value. Represents the MSBuild engine. Initializes a new instance of the class. Initializes a new instance of the class. A that represents properties to be passed to the child engine. Initializes a new instance of the class. A that represents properties to be passed to the child engine. Initializes a new instance of the class. A that represents properties to be passed to the child engine. A enumeration specifies the location of the Toolset definition. An integer that specifies the number of CPUs or cores in the system. A string of parameters that are used to configure the MSBuild engine. You must format the parameters as =. The valid semicolon-separated, optional parameters are as follows:MSBUILDLOCATION Indicates where the build process can find MSBuild.exe. This path enables the MSBuild engine to locate MSBuild.exe and start it as a local node. MSBUILDLOCATION is the only essential parameter for a host. The default value is C:\Windows\Microsoft.Net\Framework\v3.5\.NODEREUSE Indicates whether the child nodes should remain after the build finishes, in case they can be used later by another build. The nodes are discarded automatically after one minute of non-use. The default value is true. Initializes a new instance of the class. A enumeration that specifies the location of the Toolset definition. Initializes a new instance of the class that has the specified . The path to MSBuild.exe. Gets or sets the path to MSBuild.exe. The path to MSBuild.exe. Gets or sets a value that indicates whether the building of targets in the project is enabled. true if the building of targets in the project is enabled; otherwise, false. 2 Builds the specified . true if the build was successful; otherwise, false. The to build. Builds the specified target of the specified . true if the build was successful; otherwise, false. The to build. The Name attribute of the Target element to build. Builds the specified targets of the specified . true if the build was successful; otherwise, false. The to build. An array that contains the Name attributes of the Target elements to build. Builds the specified targets of the specified , and returns the outputs of the targets. true if the build was successful; otherwise, false. The to build. An array that contains the Name attributes of the Target elements to build. The outputs of the built targets. This parameter can be a null reference (Nothing in Visual Basic) if outputs are not required. Builds the specified targets of the specified with the specified , and returns the outputs of the targets. true if the build was successful; otherwise, false. The to build. An array that contains the Name attributes of the Target elements to build. The outputs of the built targets. This parameter can be a null reference (Nothing in Visual Basic) if outputs are not required. The to apply to the build. Loads the specified project file and builds the project. true if the build was successful; otherwise, false. The project file to load and build. Loads the specified project file and builds the specified target of the project. true if the build was successful; otherwise, false. The project file to load and build. The Name attribute of the Target element to build. Loads the specified project file and builds the specified targets of the project. true if the build was successful; otherwise, false. The project file to load and build. An array that contains the Name attributes of the Target elements to build. Loads the specified project file and builds the specified targets of the project with the specified , and returns the outputs of the targets. true if the build was successful; otherwise, false. The project file to load and build. An array that contains the Name attributes of the Target elements to build. The to apply to the build. Loads the specified project file and builds the specified targets of the project with the specified , and returns the outputs of the targets. true if the build was successful; otherwise, false. The project file to load and build. An array that contains the Name attributes of the Target elements to build. The to apply to the build. The outputs of the built targets. This parameter can be a null reference (Nothing in Visual Basic) if outputs are not required. Loads the specified project file and builds the specified targets of the project with the specified and , and returns the outputs of the targets. true if the build was successful; otherwise, false. The project file to load and build. An array that contains the Name attributes of the Target elements to build. The to apply to the build. The outputs of the built targets. This parameter can be a null reference (Nothing in Visual Basic) if outputs are not required. The to apply to the build. Loads a project file from disk and builds the specified targets. true if the build succeeds; otherwise, false. The name of the project to build. A array of targets for each project. Can be null if you want to build the default targets for the project. An array of properties for each project. Can be null if no global properties are required. A array of tables for target outputs. Can be null if outputs are not required. A string array of additional build flags. The ToolsVersion to impose on the project in this build. Loads a set of project files from disk and then builds the given list of targets for each project. true if the project built successfully; otherwise, false. A string list of project files to build. This value cannot be null. A array of targets for each project. An array of properties for each project. This value cannot be null. A array of tables for target outputs. This value cannot be null. A string array of additional build flags. The ToolsVersion to impose on the project in this build. Creates an empty object that is associated with this . The created object. 2 The default ToolsVersion of this build engine. A string that represents the default ToolsVersion. 2 Returns the object that is associated with the specified project file. The object that associated with the specified project file. If no object is associated with the specified project file, the method returns a null reference (Nothing in Visual Basic). The fully qualified file path to the project file of the object. 2 Gets the that is global (shared) for this . The that is global (shared) for this . Gets or sets a collection of the global properties for the project. A that contains the global properties for the project. 2 Gets whether a project is currently being built. true if a build is in progress; otherwise, false. 2 Gets or sets a value that indicates whether to only log critical events, such as warnings and errors, during the build. true if only critical events should be logged; otherwise, false. 2 Registers distributed loggers with the build engine. An that represents the central logger. A that represents the forwarding logger. Registers the specified logger with the . The logger to associate with the . Called when the host is finished with this build engine. It unregisters loggers and shuts down nodes. 2 Returns the collection of Toolsets that are recognized by this build engine instance. A . 2 Removes all references to objects from the . 2 Removes the reference to the specified from the . 2 Unregisters all loggers from the . 2 Gets the version of the . The version of the . 2 Extends the to log messages to a file rather than the console window. Initializes a new instance of the class. 2 Registers the logger for the specified events. The to register with the logger. Registers the logger for the specified events. The to register with the logger. An integer representing the node ID for the event source. Stops the logger, releases all resources, and closes the file to which the logger was writing. Represents a single Import element in an MSBuild project. Gets the Condition attribute value of the Import element. The Condition attribute value of the Import element. Gets the fully qualified path of the file specified in the Name attribute of the Import element. The fullly qualified path of the file specified in the Name attribute of the Import element. Gets a value indicating whether the Import element was imported into the project. true if the Import element was imported into the project; otherwise, false. 2 Gets or sets the Project attribute value of the Import element. The Project attribute value of the Import element. Represents a collection of all Import elements in a project. Allows hosts to programmatically add a new <Import> tag to a project file being manipulated by the host. A required string representing the name of the project file for the <Import> statement to be added. For example, "myproject.csproj." An optional string indicating whether the element is processed. If is true, then the specified <Import> tag is added, if false, it is not. Copies the entire to a compatible one-dimensional of objects, starting at the specified index of the target array. The one-dimensional of objects that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. 2 Copies the entire to a compatible one-dimensional , starting at the specified index of the target array. The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. 2 Gets a value indicating the number of objects in the . An integer value representing the number of objects in the collection. Gets an enumerator that iterates through the . An for the entire . 2 Gets a value indicating whether access to the is synchronized (thread safe). true if access to the is synchronized (thread safe); otherwise, false. The default is false. 2 Allows hosts to programmatically remove <Import> tags that are part of a project file being manipulated by the host. A string representing the name of the <Import> tag to remove from the project file. Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . 2 This exception is used to wrap an unhandled exception from a logger. Initializes a new instance of the class. Initializes a new instance of the class using the specified values. The error message that explains the reason for the exception. Initializes a new instance of the class using the specified values. The error message that explains the reason for the exception. The exception that is the cause of the current excpetion. If the parameter is not a null reference (Nothing in Visual Basic), the current exception is raised in a catch block that handles the inner exception. Gets the details of the build event, if any, that was being logged. The details of the build event that was being logged. 2 Gets the error code associated with this exception's message. The text for the error code. 2 Sets the with information about the exception. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. 2 Gets the F1-help keyword associated with this error. The F1-help keyword associated with this error. Gets whether an exception occurred during logger initialization. true if the exception occured during logger initialization, false otherwise. 2 This exception is thrown whenever there is a problem with the user's XML project file. The problem might be semantic or syntactical. If the problem is in the syntax, it can typically be caught by XSD validation. Initializes a new instance of class. 2 Initializes a new instance of class using the specified message. The error message that explains the reason for the exception. 2 Initializes a new instance of class using the specified error message and inner exception. The error message that explains the reason for the exception. The exception that is the cause of the current excpetion. If the parameter is not a null reference (Nothing in Visual Basic), the current exception is raised in a catch block that handles the inner exception. 2 Initializes a new instance of class using rich error information. The invalid project file. Can be an 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. The error message text for the exception. The description of the error. This parameter can be a null reference (Nothing in Visual Basic). The error code. This parameter can be a null reference (Nothing). The F1-help keyword for the host IDE. This parameter can be a null reference (Nothing). 2 Initializes a new instance of class using rich error information. The XML node where the error is located. Can be null. The error message text for the exception. A description for the error. This parameter can be a null reference (Nothing in Visual Basic). The error code. This parameter can be a null reference (Nothing). The F1-help keyword for the host IDE. Can be null. 2 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 a null reference (Nothing in Visual Basic). Gets the error sub-category, if any that describes the type of this error. The sub-category string, or null. Sets the with information about the exception. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. Gets the F1-help keyword, if any, associated with this error, for the host IDE. The keyword string, or a null reference (Nothing in Visual Basic). 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 project file, if any, associated with this exception. The project file name and path string, or a null reference (Nothing in Visual Basic). This exception is thrown whenever there is a problem with the user's custom toolset definition file. The problem might be semantic or syntactical. If the problem is in the syntax, it can typically be caught by XSD validation. Initializes a new instance of the class. 2 Initializes a new instance of the class. Initializes a new instance of the class. 2 Initializes a new instance of the class. The error message that explains the reason for the exception. The error code. This parameter can be a null reference (Nothing). 2 Initializes a new instance of the class. The error message that explains the reason for the exception. The error code. This parameter can be a null reference (Nothing). 2 Initializes a new instance of the class. The error message that explains the reason for the exception. The error code. This parameter can be a null reference (Nothing). The exception that is the cause of the current exception. If the parameter is not a null reference (Nothing in Visual Basic), the current exception is raised in a catch block that handles the inner exception. 2 Gets the exception error code that was thrown. A string representing the error code. Sets the with information about the exception. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. 2 Contains information about a logger as a collection of values that can be used to instantiate the logger as well as being serialized to pass between different processes. Creates a logger description based on the given parameters. The class name for the logger. The assembly name for the logger. The assembly file name for the logger. A string of logger parameters, null if there are none. The verbosity switch for the logger.Note   On the command line, all loggers get the same verbosity level. Gets the string of logger parameters. Returns a string list of the log parameters; null if there are none. Gets the verbosity level for the logger. A string value representing the logger's verbosity level. Represents a project that can be built using MSBuild. Initializes a new instance of the class. Initializes a new instance of the class using the supplied . The instance to use for creating the project in memory. Initializes a new instance of the class using the supplied and . The instance to use for creating the project in memory. The to use for creating the project in memory. Add an Import element to the end of the project. The name of the project file to import. Corresponds to the Project attribute of the Import element. The condition to evaluate before importing the project. Corresponds to the Condition attribute of the Import element. 2 Adds the specified Item element to the project. A containing the created item. The name of the item collection to add the item to. Corresponds to the user-defined name of the Item element. The value of the Include attribute of the item. 2 Adds the specified Item element to the project. A containing the created item. The name of the item collection to add the item to. Corresponds to the user-defined name of the Item element. The value of the Include attribute of the item. true to treat the parameter as a literal value; otherwise, false. 2 Adds a new ItemGroup element to the project. A containing the created item group. 2 Adds a new PropertyGroup element to the project. A containing the created property group. true to insert the PropertyGroup at the end of the project; otherwise, false. 2 Adds a new UsingTask element with the specified assembly file. The name of the task to reference from the assembly. Corresponds to the TaskName attribute of the UsingTask element. The file path to the assembly. Corresponds to the AssemblyFile attribute of the UsingTask element. 2 Adds a new UsingTask element with the specified assembly name. The name of the task to reference from the assembly. Corresponds to the TaskName attribute of the UsingTask element. The name of the assembly to load. Corresponds to the AssemblyName attribute of the UsingTask element. 2 Builds the default targets of the project. true if the build was successful; otherwise, false. Builds the specified target in the project. true if the build was successful; otherwise, false. The target to build. Builds the specified list of targets in the project. true if the build was successful; otherwise, false. The list of targets to build. This parameter can be a null reference (Nothing in Visual Basic) to build the default targets. Builds the specified list of targets in the project, and returns the outputs of the targets. true if the build was successful; otherwise, false. The list of targets to build. This parameter can be a null reference (Nothing in Visual Basic) to build the default targets. The outputs of the built targets. This parameter can be a null reference (Nothing) if outputs are not needed. Builds the specified list of targets in the project using the specified settings, and returns the outputs of the targets. true if the build was successful; otherwise, false. The list of targets to build. This parameter can be a null reference (Nothing in Visual Basic) to build the default targets. The outputs of the built targets. This parameter can be a null reference (Nothing) if outputs are not needed. The to apply to the build. Gets or sets a value indicating whether the project is enabled for building tasks and targets. true if the project is enabled for building tasks and targets; otherwise, false. 2 Gets or sets the DefaultTargets attribute of the Project element in the MSBuild project. A semi-colon (;) delimited list of the targets specified in the DefaultTargets attribute. 2 Sets or gets the ToolsVersion XML attribute found on the Project Element (MSBuild) element in the project file. A string representing the Tools version. 2 Gets the encoding for the project file. An value of the project file. 2 Gets a collection of the items evaluated during the build. A containing the items evaluated during the build. 2 Gets a collection of all items in a project, even those not used in the build process because a Condition attribute evaluated to false. A containing all items in a project. 2 Gets a collection of the properties evaluated during the build. A containing the properties evaluated during the build. 2 Gets or sets the fully qualified path and file name of the project file. The full path of the project file. Returns a list of possible values for the specified property. The list of possible values for the property. The property to use when generating the list of possible values. 2 Returns all evaluated items belonging to the specified item collection. A containing all of the evaluated items belonging to the specified item collection. The name of the item collection. 2 Returns all items belonging to the specified item collection. A containing all items belonging to the specified item collection, even those not used in the build process because a Condition attribute evaluated to false.. The name of the specified item collection. 2 Returns the value of the specified property. The value of the specified property. The name of the property. 2 Returns a string value of the XML from the specified element in the ProjectExtensions element. The string value of the specified element in the ProjectExtensions element of the project. The name of the element in the ProjectExtensions element to return. 2 Gets or sets a collection of the global properties for the project. A containing the global properties for the project. 2 Gets whether the Project file has the ToolsVersion XML attribute. true if the project has the ToolsVersion attribute; otherwise, false. 2 Gets the projects imported into this project. An of the projects imported into this project. 2 Gets or sets the InitialTargets attribute of the Project element in the MSBuild project. A semi-colon (;) delimited list of the targets specified in the InitialTargets attribute. 2 Gets a value indicating whether the project has changed and needs to be saved to a file. true if the project has changed and needs to be saved; otherwise, false. Gets a value indicating whether the project is to be validated against a schema. true if the project is to be validated against a schema; otherwise, false. 2 Gets a collection of the item groups specified with the ItemGroup element in the project. A containing the item groups specifiied in the project. 2 Loads the contents of the specified into the object. The to load. The file used by the is not a valid project file. Reads the contents of this project from a string containing the XML contents. A object containing the project contents. A value that specifies the settings for the project being loaded. Loads the contents of the specified project file into the object. The project file to load. The file specified by is not a valid project file. Reads the contents of this project from a project XML file on disk. A string representing the name of the file to load. A value that specifies the settings for the project being loaded. Loads the contents of the specified string into the object. The string of XML to load. The XML contained in is not a valid project file. Reads the contents of this project from a string containing the XML contents. A string containing the project contents. A value that specifies the settings for the project being loaded. Sets the property of the project to true. 2 Gets the that builds the project. The parent object. Gets a collection of the property groups specified with the PropertyGroup element in the project. A containing the property groups specifiied in the project. 2 Removes all item groups from the project, but does not modify imported projects. 2 Removes all property groups from the project, but does not modify imported projects. 2 Removes the specified property group from the main project file. A object representing the group to remove. 2 Removes the specified item from the project. The item to remove from the project. 2 Removes the specified item group from the project. The item group to remove from the project. 2 Removes all item groups with the specified condition from the project, but does not modify imported projects. The condition to match when removing item groups. 2 Removes all items in the specified item collection from the project, but does not modify imported projects. The item collection to remove. 2 Removes the specified property group from the project. The property group to remove from the project. 2 Removes all property groups with the specified condition from the project, but does not modify imported projects. The condition to match when removing property groups. 2 Removes all <PropertyGroup>'s from the main project file that have a specific "Condition." A string representing the condition of the PropertyGroups that you want removed. A boolean value indicating whether to include imported property groups in the search. 2 Resets the status every target in the project so that the next build will build all targets again. 2 Saves the project in the specified object. The object in which to save the project. Saves the project to the specified file. The name of the file in which to save the project. Saves the project in the specified file with the specified encoding. The name of the file in which to save the project. The value with which to save the file. Gets or sets the XML schema file to use when validating the project. The XML schema file to use when validating the project. 2 Sets the value of a property in the specified imported project. The name of the property to change. The value to assign the property. The condition to use on the property. Corresponds to the Condition attribute of the Property element. The that contains the specified property. 2 Sets the value of a property in the specified imported project. The name of the property to change. The value to assign the property. The condition to use on the property. Corresponds to the Condition attribute of the Property element. The that contains the specified property. A value indicating the location to insert the property. 2 Sets the value of a property in the specified imported project. The name of the property to change. The value to assign the property. The condition to use on the property. Corresponds to the Condition attribute of the Property element. The that contains the specified property. A value indicating the location to insert the property. true to treat the parameter as a literal value; otherwise, false. 2 Sets the ProjectExtensions element of the project with the specified element name and content. The name of the XML element to create as a child of the ProjectExtensions element. The text value of the created XML element. 2 Sets the value of the specified property. The name of the property to change. The value to assign the property. 2 Sets the value of the specified property. The name of the property to change. The value to assign the property. The condition to use on the property. Corresponds to the Condition attribute of the Property element. 2 Sets the value of the specified property. The name of the property to change. The value to assign the property. The condition to use on the property. Corresponds to the Condition attribute of the Property element. A value indicating the location to insert the property. 2 Sets the value of the specified property. The name of the property to change. The value to assign the property. The condition to use on the property. Corresponds to the Condition attribute of the Property element. A value indicating the location to insert the property. true to treat the parameter as a literal value; otherwise, false. 2 Gets the targets in the project. A of the targets in the project. 2 Gets a object indicating the time the project was last changed in a way that required it to be saved to a file. A object indicating the time the project was last changed in a way that required it to be saved to a file. 2 Sets or gets the current version of the Toolset being used by the project. A string representing the version number of the Toolset. 2 Gets a collection of the UsingTask elements in the project. A of the UsingTask elements in the project. 2 Gets the XML representing the project. The full XML representing the project. 2 Defines how MSBuild loads a project. Load the project normally. Ignore nonexistent .targets files when loading the project. Specifies constants that define the location in the project to insert a property. Replace the existing Property element if it exists. Otherwise, if possible, create a new Property element as a child of an existing compatible PropertyGroup element. If necessary, create a new compatible PropertyGroup element immediately following the last PropertyGroup in the project. Replace the existing Property element if it exists. Otherwise, create the Property after the last Import element in the project. Wraps exceptions that occur on a different node. ISerializable method which must be overridden since Exception implements this interface. A object representing information about the remote error exception. A object representing the context in which the remote error exception occurred. 2 Represents a single Target element in an MSBuild project. Adds the specified Task element to the Target element. A object represents a child Task element of the Target element. The object that represents the Task element to add to the Target element. Gets the Condition attribute value of the Target element. The Condition attribute value of the Target element. 2 Gets the DependsOnTargets attribute value of the Target element. The DependsOnTargets attribute value of the Target element. Gets an enumerator that iterates through the objects in the . An for the objects in the . 2 Gets or sets the items that are to be input into this target. A string representing the items. Gets a value indicating whether the Target element was imported into the project. true if the Target element was imported into the project; otherwise, false. 2 Gets the Name attribute value of the Target element. The Name attribute value of the Target element. Gets or sets the expected outputs of this target. A string representing the outputs. Removes the specified Task element from the Target element. The object that represents the Task element to remove from the Target element. Represents a collection of all Target elements in a project. Adds a new Target element to the end of the project. A object representing the created Target element. The Name attribute of the new Target element. Copies the entire to a compatible one-dimensional , starting at the specified index of the target array. The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. 2 Gets a value indicating the number of objects in the . An integer value representing the number of objects in the collection. Determines whether the specified exists in the . true if the Target element exists; otherwise, false. The Name attribute of the Target element to search for. Gets an enumerator that iterates through the . An for the entire . 2 Gets a value indicating whether access to the is synchronized (thread safe). true if access to the is synchronized (thread safe); otherwise, false. The default is false. 2 Gets the specified object in the . The object that contains the property value specified by . The Name attribute of the Target element in the collection. Removes the specified Target element from the project. The Name attribute of the Target element to remove. Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . 2 Represents a Toolset in MSBuild. For more information about Toolsets, see Standard and Custom Toolset Configurations. Creates a object. A string representing the version of the currently in use. A string representing the path to the currently in use. Creates a object. A string representing the version of the currently in use. A string representing the path to the currently in use. A string representing the -specific custom properties. Gets the that is used to set -specific custom properties. A object. Creates a copy of the specified . A object. 2 Gets the path to the specified . A string representing the path to the . Gets the version of the specified . A string representing the version of the . Represents one or more objects. A Toolset is a combination of a Toolset version (such as "2.0"), a tools path, and an optional set of associated properties. Adds the specified to this collection. A object representing the Toolset to add to the collection. This method is not supported. Gets whether the collection contains a with the specified name. true if the is contained in the collection; otherwise, false. The default is false. Required. A string value representing the name of the . Gets whether the collection contains a with the specified tools version. true if the is contained in the collection; otherwise, false. The default is false. Required. A string value representing the tools version associated with the . Copies the contents of the to a compatible one-dimensional , starting at the specified index of the target array. The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. 2 Gets a value indicating the number of objects in the . An integer value representing the number of objects in the collection. Gets an enumerator that iterates through the . An for the entire . 2 Gets whether the is read-only. always returns false because Toolsets are always writable. A boolean value indicating whether the is read-only. 2 Gets the associated with the specified tools version. A object representing the toolset that matches the specified . Required. A string value representing the tools version associated with the desired . This method is not supported. Not supported. Gets the names of the s stored in this collection. An enumeration whose elements represent individual objects in this collection. An enumeration whose values control 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). Represents a single UsingTask element in an MSBuild project. Gets the AssemblyFile attribute value of the UsingTask element. The AssemblyFile attribute value of the UsingTask element. Gets the AssemblyName attribute value of the UsingTask element. The AssemblyName attribute value of the UsingTask element. Gets the Condition attribute value of the UsingTask element. The Condition attribute value of the UsingTask element. 2 Gets a value indicating whether the UsingTask element was imported into the project. true if the UsingTask element was imported into the project; otherwise, false. 2 Gets the TaskName attribute value of the UsingTask element. The TaskName attribute value of the UsingTask element. Represents a collection of all UsingTask elements in a project. Copies the entire to a compatible one-dimensional of objects, starting at the specified index of the target array. The one-dimensional of objects that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. 2 Copies the entire to a compatible one-dimensional , starting at the specified index of the target array. The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. 2 Gets a value indicating the number of objects in the . An integer value representing the number of objects in the collection. Gets an enumerator that iterates through the . An for the entire . 2 Gets a value indicating whether access to the is synchronized (thread safe). true if access to the is synchronized (thread safe); otherwise, false. The default is false. 2 Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . 2 Contains utility methods used by MSBuild. This class cannot be inherited. Converts the specified string into a syntax that allows the MSBuild engine to interpret the character literally. The converted value of the specified string. The string to convert. Represents the method that writes strings to a certain location, such as the console window or a window in an integrated development environment. The string to write.