This documentation is archived and is not being maintained.

XmlElement.SetAttribute Method (String, String)

Sets the value of the attribute with the specified name.

Namespace:  System.Xml
Assembly:  System.Xml (in System.Xml.dll)

public virtual void SetAttribute(
	string name,
	string value


Type: System.String
The name of the attribute to create or alter. This is a qualified name. If the name contains a colon it is parsed into prefix and local name components.
Type: System.String
The value to set for the attribute.


The specified name contains an invalid character.


The node is read-only.

If an attribute with the same name is already present in the element, its value is changed to that of value. value is a simple string. It is not parsed as it is being set. Any markup, such as syntax to be recognized as an entity reference, is treated as literal text and needs to be properly escaped by the implementation when it is written out. In order to assign an attribute value that contains entity references, the user must create an XmlAttribute node plus any XmlText and XmlEntityReference nodes, build the appropriate subtree and use SetAttributeNode to assign it as the value of an attribute.

The following example adds an attribute to an element.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.