Export (0) Print
Expand All

ProjectItem.SetMetadataValue Method

Adds metadata with the given name and unevaluated value to the item.

Namespace:  Microsoft.Build.Evaluation
Assembly:  Microsoft.Build (in Microsoft.Build.dll)

public ProjectMetadata SetMetadataValue(
	string name,
	string unevaluatedValue


Type: System.String

The name of the metadata to add.

Type: System.String

The unevaluated value of the metadata to add.

Return Value

Type: Microsoft.Build.Evaluation.ProjectMetadata
Returns the new metadata. If metadata with the given name already exists, returns this metadata.

Updates the value of existing metadata if metadata already exists with the given name on the item, as long as it does not originate from an item definition. Updates the evaluated project, but does not affect anything else in the project until reevaluation.

For example, if a piece of metadata named "m" is added on item of type "i", it does not affect "j" which is evaluated from "@(j->'%(m)')" until reevaluation. Also if the unevaluated value of "m" is set to something that is modified by evaluation, such as "$(p)", the evaluated value will be set to literally "$(p)" until reevaluation.

Special characters in the unevaluated value should be converted to escape characters.

.NET Framework

Supported in: 4.6, 4.5, 4
© 2015 Microsoft