ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / MapMember Class / SetMetadata Method
The xml formatted metadata
Example Version

SetMetadata Method (MapMember)
Sets the MapMember metadata. This method must be called on the MCT. Use QueuedTask.Run.
Syntax
public virtual void SetMetadata( 
   string metadataXml
)

Parameters

metadataXml
The xml formatted metadata
Exceptions
ExceptionDescription
This method or property must be called within the lambda passed to QueuedTask.Run.
There is a load or parse error in the XML
Remarks
The input xml must be a valid metadata document. The MapMember metadata must be editable. Refer to GetCanEditMetadata.
Example
Layer Metadata
MapMember mapMember = map.GetLayersAsFlattenedList().FirstOrDefault(); //Search for only layers/tables here if needed.
if (mapMember == null) return;

//Gets whether or not the MapMember stores its own metadata or uses metadata retrieved
//from its source. This method must be called on the MCT. Use QueuedTask.Run
bool doesUseSourceMetadata = mapMember.GetUseSourceMetadata();

//Sets whether or not the MapMember will use its own metadata or the metadata from
//its underyling source (if it has one). This method must be called on the MCT.
//Use QueuedTask.Run
mapMember.SetUseSourceMetadata(true);

//Does the MapMember supports metadata
var supportsMetadata = mapMember.SupportsMetadata;

//Get MapMember metadata
var metadatstring = mapMember.GetMetadata();
//TODO:Make edits to metadata using the retrieved mapMetadata string.

//Set the modified metadata back to the mapmember (layer, table..)
if (mapMember.GetCanEditMetadata())
  mapMember.SetMetadata(metadatstring);
Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also