XAttribute Konstruktory
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
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 , double
String, float
, decimal
, bool
, DateTimenebo TimeSpan. Pokud je DateTime hodnota nebo TimeSpan, je hodnota atributu správně naformátovaná podle specifikací W3C.