XAttribute Oluşturucular

Tanım

XAttribute sınıfının yeni bir örneğini başlatır.

Aşırı Yüklemeler

XAttribute(XAttribute)

Sınıfın XAttribute yeni bir örneğini başka bir XAttribute nesneden başlatır.

XAttribute(XName, Object)

Belirtilen ad ve değerden sınıfın XAttribute yeni bir örneğini başlatır.

XAttribute(XAttribute)

Sınıfın XAttribute yeni bir örneğini başka bir XAttribute nesneden başlatır.

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)

Parametreler

other
XAttribute

Kopyalanacak XAttribute nesne.

Özel durumlar

other parametresidirnull.

Örnekler

Bu örnekte, XML ağacının derin bir kopyasının oluşturulmasının ağaçtaki bir özniteliğin kopyasını değil kopyasını oluşturduğu gösterilmektedir.

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  

Bu örnek aşağıdaki çıkışı oluşturur:

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

Açıklamalar

Bu oluşturucu öncelikle bir XML ağacının derin bir kopyasını oluştururken dahili olarak kullanılır.

Ayrıca bkz.

Şunlara uygulanır

XAttribute(XName, Object)

Belirtilen ad ve değerden sınıfın XAttribute yeni bir örneğini başlatır.

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)

Parametreler

name
XName

XName özniteliğinin.

value
Object

Object özniteliğinin değerini içeren.

Özel durumlar

name veya value parametresidirnull.

Örnekler

Aşağıdaki örnekte öznitelik oluşturmak için bu oluşturucu kullanılır. İlk bağımsız değişken olarak dizeleri oluşturucuya XAttribute geçirir ve bu da örtük olarak nesnelere XName dönüştürülür. Öznitelikler bir öğeye eklenir.

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)  

Bu örnek aşağıdaki çıkışı oluşturur:

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

Açıklamalar

dizesinden XNameöğesine örtük bir dönüştürme vardır. Bu oluşturucunun tipik kullanımı, aşağıdaki gibi yeni XNamebir oluşturmak yerine ilk parametre olarak bir dize belirtmektir:

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

Ekleme işleci aşırı yüklemesini ve dizesini XNamespace kullanarak aşağıdaki gibi bir XNameoluşturabilirsiniz:

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

Daha fazla bilgi için bkz. XML Ad Alanları ile çalışma.

Bu yaklaşımlar Visual Basic için de işe yarar, ancak XML değişmez değerleri XML ağaçları oluşturmak için daha iyi bir yaklaşım sağlar.

value parametresi , String, double, float, decimal, bool, DateTimeveya TimeSpanolabilir. Değer veya DateTime TimeSpanise, özniteliğin değeri W3C belirtimlerine göre doğru biçimlendirilir.

Ayrıca bkz.

Şunlara uygulanır