共用方式為


ProjectItem.SetMetadataValue Method

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

MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0.

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

Syntax

'Declaration
Public Function SetMetadataValue ( _
    name As String, _
    unevaluatedValue As String _
) As ProjectMetadata
public ProjectMetadata SetMetadataValue(
    string name,
    string unevaluatedValue
)
public:
ProjectMetadata^ SetMetadataValue(
    String^ name, 
    String^ unevaluatedValue
)
member SetMetadataValue : 
        name:string * 
        unevaluatedValue:string -> ProjectMetadata
public function SetMetadataValue(
    name : String, 
    unevaluatedValue : String
) : ProjectMetadata

Parameters

  • unevaluatedValue
    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.

Remarks

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 Security

See Also

Reference

ProjectItem Class

Microsoft.Build.Evaluation Namespace