Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Det finns många sätt att ta bort attribut. En teknik är att ta bort dem från attributsamlingen. För att göra detta utförs följande steg:
Hämta attributsamlingen från elementet med hjälp av
XmlAttributeCollection attrs = elem.Attributes;
.Ta bort attributet från attributsamlingen med någon av tre metoder:
Följande metoder tar bort attribut från elementnoden.
Använd RemoveAllAttributes för att ta bort attributsamlingen.
Använd RemoveAttribute för att ta bort ett enda attribut efter namn från samlingen.
Använd RemoveAttributeAt för att ta bort ett enskilt attribut efter indexnummer från samlingen.
Ett annat alternativ är att hämta elementet, hämta attributet från attributsamlingen och ta bort attributnoden direkt. Om du vill hämta attributet från attributsamlingen kan du använda ett namn, XmlAttribute attr = attrs["attr_name"];
, ett index XmlAttribute attr = attrs[0];
eller genom att fullständigt kvalificera namnet med namnområdet XmlAttribute attr = attrs["attr_localName", "attr_namespace"]
.
Oavsett vilken metod som används för att ta bort attribut finns det särskilda begränsningar för att ta bort attribut som definieras som standardattribut i dokumenttypsdefinitionen (DTD). Standardattribut kan inte tas bort om inte elementet de tillhör tas bort. Standardattribut finns alltid för element som har standardattribut deklarerade. Om du tar bort ett standardattribut från ett XmlAttributeCollection eller från XmlElement resultatet i ett ersättningsattribut som infogats i XmlAttributeCollection elementets initiering till det standardvärde som deklarerades. Om du har ett element definierat som <book att1="1" att2="2" att3="3"></book>
, har du ett book
element med tre standardattribut deklarerade. Implementeringen av XML-dokumentobjektmodellen (DOM) garanterar att så länge det här book
elementet finns har det dessa tre standardattribut för att1
, att2
och att3
.
När den anropas med en XmlAttributeRemoveAll anger metoden värdet för attributet till String.Empty, eftersom ett attribut inte kan finnas utan ett värde.