XAttribute Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der XAttribute-Klasse.
Überlädt
XAttribute(XAttribute) |
Initialisiert eine neue Instanz der XAttribute-Klasse aus einem anderen XAttribute-Objekt. |
XAttribute(XName, Object) |
Initialisiert eine neue Instanz der XAttribute-Klasse mit dem angegebenen Namen und Wert. |
XAttribute(XAttribute)
- Quelle:
- XAttribute.cs
- Quelle:
- XAttribute.cs
- Quelle:
- XAttribute.cs
Initialisiert eine neue Instanz der XAttribute-Klasse aus einem anderen XAttribute-Objekt.
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)
Parameter
- other
- XAttribute
Ein XAttribute-Objekt, aus dem kopiert werden soll.
Ausnahmen
Der other
-Parameter ist null
.
Beispiele
In diesem Beispiel wird veranschaulicht, dass beim Erstellen einer tiefen Kopie einer XML-Struktur keine Kopie eines Attributs in der Struktur erstellt wird.
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
Dieses Beispiel erzeugt die folgende Ausgabe:
Creating a deep copy created a new attribute from the original.
Hinweise
Dieser Konstruktor wird hauptsächlich intern verwendet, wenn eine tiefe Kopie einer XML-Struktur erstellt wird.
Weitere Informationen
Gilt für:
XAttribute(XName, Object)
- Quelle:
- XAttribute.cs
- Quelle:
- XAttribute.cs
- Quelle:
- XAttribute.cs
Initialisiert eine neue Instanz der XAttribute-Klasse mit dem angegebenen Namen und Wert.
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)
Parameter
Ausnahmen
Der name
-Parameter oder der value
-Parameter ist null
.
Beispiele
Im folgenden Beispiel wird dieser Konstruktor verwendet, um Attribute zu erstellen. Es übergibt Zeichenfolgen als erstes Argument an den XAttribute Konstruktor, die dann implizit in XName -Objekte konvertiert werden. Die Attribute werden einem Element hinzugefügt.
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)
Dieses Beispiel erzeugt die folgende Ausgabe:
<Root Att1="Some text" Att2="12.345" Att3="2006-10-06T12:30:00" Att4="1" Att5="2" Att6="3" />
Hinweise
Es erfolgt eine implizite Konvertierung von einer Zeichenfolge in XName. In der Regel wird dieser Konstruktor verwendet, um eine Zeichenfolge als ersten Parameter anzugeben, anstatt wie folgt einen neuen XNamezu erstellen:
XElement root = new XElement("Root",
new XAttribute("AnAttributeName", "Content")
);
Sie können auch die Additionsoperatorüberladung mit einer XNamespace und einer Zeichenfolge verwenden, um wie folgt eine XNamezu erstellen:
XNamespace aw = "http://www.adventure-works.com";
XElement root = new XElement(aw + "Root",
new XAttribute(aw + "AnAttributeName", "Content")
);
Weitere Informationen finden Sie unter Arbeiten mit XML-Namespaces.
Die gleichen Ansätze funktionieren auch für Visual Basic, xml-Literale bieten jedoch einen besseren Ansatz zum Erstellen von XML-Strukturen.
Der value
Parameter kann , double
String, float
, decimal
bool
, DateTime, oder TimeSpansein. Wenn der Wert ein DateTime oder TimeSpanist, wird der Wert des Attributs gemäß den W3C-Spezifikationen ordnungsgemäß formatiert.