Sdílet prostřednictvím


XAttribute Konstruktory

Definice

Inicializuje novou instanci XAttribute třídy.

Přetížení

XAttribute(XAttribute)

Inicializuje novou instanci XAttribute třídy z jiného XAttribute objektu.

XAttribute(XName, Object)

Inicializuje novou instanci XAttribute třídy ze zadaného názvu a hodnoty.

XAttribute(XAttribute)

Zdroj:
XAttribute.cs
Zdroj:
XAttribute.cs
Zdroj:
XAttribute.cs

Inicializuje novou instanci XAttribute třídy z jiného XAttribute objektu.

public:
 XAttribute(System::Xml::Linq::XAttribute ^ other);
public XAttribute (System.Xml.Linq.XAttribute other);
new System.Xml.Linq.XAttribute : System.Xml.Linq.XAttribute -> System.Xml.Linq.XAttribute
Public Sub New (other As XAttribute)

Parametry

other
XAttribute

Objekt XAttribute , ze který chcete kopírovat.

Výjimky

Parametr other je null.

Příklady

Tento příklad ukazuje, že vytvoření hloubkové kopie stromu XML vytvoří kopii, nikoli klon, atributu ve stromu.

XElement root1 = XElement.Parse("<Root Att1='abc' />");  
// Make a deep copy.  
XElement root2 = new XElement(root1);  
if (root1.Attribute("Att1") == root2.Attribute("Att1"))  
    Console.WriteLine("This will not be printed");  
else  
    Console.WriteLine("Creating a deep copy created a new attribute from the original.");  
Dim root1 As XElement = <Root Att1='abc'/>  
' Make a deep copy.  
Dim root2 As XElement = New XElement(root1)  
If root1.Attribute("Att1") Is root2.Attribute("Att1") Then  
    Console.WriteLine("This will not be printed")  
Else  
    Console.WriteLine("Creating a deep copy created a new attribute from the original.")  
End If  

Tento příklad vytvoří následující výstup:

Creating a deep copy created a new attribute from the original.  

Poznámky

Tento konstruktor se primárně používá interně při vytváření hloubkové kopie stromu XML.

Viz také

Platí pro

XAttribute(XName, Object)

Zdroj:
XAttribute.cs
Zdroj:
XAttribute.cs
Zdroj:
XAttribute.cs

Inicializuje novou instanci XAttribute třídy ze zadaného názvu a hodnoty.

public:
 XAttribute(System::Xml::Linq::XName ^ name, System::Object ^ value);
public XAttribute (System.Xml.Linq.XName name, object value);
new System.Xml.Linq.XAttribute : System.Xml.Linq.XName * obj -> System.Xml.Linq.XAttribute
Public Sub New (name As XName, value As Object)

Parametry

name
XName

Atribut .XName

value
Object

Obsahující Object hodnotu atributu.

Výjimky

Parametr name nebo value je null.

Příklady

Následující příklad používá tento konstruktor k vytvoření atributů. Předává řetězce jako první argument konstruktoru XAttribute , který se pak implicitně převede na XName objekty. Atributy jsou přidány do elementu.

XElement root;  

double dbl = 12.345;  
XAttribute[] attArray = {  
    new XAttribute("Att4", 1),  
    new XAttribute("Att5", 2),  
    new XAttribute("Att6", 3)  
};  
DateTime dt = new DateTime(2006, 10, 6, 12, 30, 00);  

// string content  
root = new XElement("Root",  
    new XAttribute("Att1", "Some text"),  

    // double content  
    new XAttribute("Att2", dbl),  

    // DateTime content  
    new XAttribute("Att3", dt),  

    // XAttribute array content  
    attArray  
);  

Console.WriteLine(root);  
Dim dbl As Double = 12.345  
Dim attArray As XAttribute() = { _  
    New XAttribute("Att4", 1), _  
    New XAttribute("Att5", 2), _  
    New XAttribute("Att6", 3) _  
}  
Dim dt As DateTime = New DateTime(2006, 10, 6, 12, 30, 0)  
Dim root As XElement = <Root Att1="Some text"  
                           Att2=<%= dbl %>  
                           Att3=<%= dt %>  
                           <%= attArray %>  
                       />  
Console.WriteLine(root)  

Tento příklad vytvoří následující výstup:

<Root Att1="Some text" Att2="12.345" Att3="2006-10-06T12:30:00" Att4="1" Att5="2" Att6="3" />  

Poznámky

Existuje implicitní převod z řetězce na XName. Typickým použitím tohoto konstruktoru je zadat řetězec jako první parametr místo vytvoření nového XName, a to následujícím způsobem:

XElement root = new XElement("Root",  
    new XAttribute("AnAttributeName", "Content")  
);  

Přetížení operátoru sčítání s řetězcem XNamespace a můžete také použít k vytvoření XName, a to následujícím způsobem:

XNamespace aw = "http://www.adventure-works.com";  
XElement root = new XElement(aw + "Root",  
    new XAttribute(aw + "AnAttributeName", "Content")  
);  

Další informace najdete v tématu Práce s obory názvů XML.

Stejné přístupy budou fungovat i pro Visual Basic, ale literály XML poskytují lepší přístup k vytváření stromů XML.

Parametr value může být , doubleString, float, decimal, bool, DateTimenebo TimeSpan. Pokud je DateTime hodnota nebo TimeSpan, je hodnota atributu správně naformátovaná podle specifikací W3C.

Viz také

Platí pro