XElement.ReplaceAll Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Alt düğümleri ve bu öğenin özniteliklerini belirtilen içerikle değiştirir.
Aşırı Yüklemeler
ReplaceAll(Object) |
Alt düğümleri ve bu öğenin özniteliklerini belirtilen içerikle değiştirir. |
ReplaceAll(Object[]) |
Alt düğümleri ve bu öğenin özniteliklerini belirtilen içerikle değiştirir. |
Örnekler
Aşağıdaki örnek, bir öğenin içeriğini sorgu sonuçlarıyla değiştirerek linq sorgusunun sonuçlarını bu yönteme geçirir. İçeriği değiştirilen öğeyi sorgular.
XElement xmlTree = new XElement("Root",
new XElement("Data", 1),
new XElement("Data", 2),
new XElement("Data", 3),
new XElement("Data", 4),
new XElement("Data", 5)
);
Console.WriteLine(xmlTree);
Console.WriteLine("-----");
xmlTree.ReplaceAll(
from el in xmlTree.Elements()
where (int)el >= 3
select new XElement("NewData", (int)el)
);
Console.WriteLine(xmlTree);
Dim xmlTree As XElement = _
<Root>
<Data>1</Data>
<Data>2</Data>
<Data>3</Data>
<Data>4</Data>
<Data>5</Data>
</Root>
Console.WriteLine(xmlTree)
Console.WriteLine("-----")
xmlTree.ReplaceAll( _
From el In xmlTree.Elements _
Where el.Value >= 3 _
Select <NewData><%= el.Value %></NewData> _
)
Console.WriteLine(xmlTree)
Bu örnek aşağıdaki çıkışı oluşturur:
<Root>
<Data>1</Data>
<Data>2</Data>
<Data>3</Data>
<Data>4</Data>
<Data>5</Data>
</Root>
-----
<Root>
<NewData>3</NewData>
<NewData>4</NewData>
<NewData>5</NewData>
</Root>
Açıklamalar
Bu yöntem anlık görüntü semantiğini kullanır; yani geçerli öğenin içeriğini yeni içerikle değiştirmeden önce yeni içeriğin ayrı bir kopyasını oluşturur. Bu, geçerli öğenin içeriğini sorgulayabileceğiniz ve sorgunun sonuçlarını belirtilen yeni içerik olarak kullanabileceğiniz anlamına gelir.
Bu işleve geçirilebilen geçerli içerik hakkında ayrıntılı bilgi için bkz. XElement ve XDocument Nesnelerinin Geçerli İçeriği.
Bu yöntem ve olaylarını ChangedChanging oluşturur.
ReplaceAll(Object)
- Kaynak:
- XElement.cs
- Kaynak:
- XElement.cs
- Kaynak:
- XElement.cs
Alt düğümleri ve bu öğenin özniteliklerini belirtilen içerikle değiştirir.
public:
void ReplaceAll(System::Object ^ content);
public void ReplaceAll (object content);
public void ReplaceAll (object? content);
member this.ReplaceAll : obj -> unit
Public Sub ReplaceAll (content As Object)
Parametreler
- content
- Object
Bu öğenin alt düğümlerinin ve özniteliklerinin yerini alacak içerik.
Örnekler
Aşağıdaki örnekte bu yöntem kullanılır.
XElement root = new XElement("Root",
new XElement("Child", "child content")
);
// ReplaceAll with an XElement object.
root.ReplaceAll(new XElement("NewChild", "n"));
Console.WriteLine(root);
// ReplaceAll with an XAttribute object.
root.ReplaceAll(new XAttribute("NewAttribute", "n"));
Console.WriteLine(root);
// ReplaceAll with a string.
root.ReplaceAll("Some text");
Console.WriteLine(root);
// ReplaceAll with a double.
double dbl = 12.345;
root.ReplaceAll(dbl);
Console.WriteLine(root);
// ReplaceAll with a DateTime object.
DateTime dt = new DateTime(2006, 10, 6, 12, 30, 00);
root.ReplaceAll(dt);
Console.WriteLine(root);
// ReplaceAll with a string array.
// Any collection other than a collection of XElement or XAttribute objects
// are converted to strings. The strings are concatenated and added.
string[] stringArray = {
"abc",
"def",
"ghi"
};
root.ReplaceAll(stringArray);
Console.WriteLine(root);
// ReplaceAll with an array of XElement objects.
XElement[] ellArray = {
new XElement("NewChild1", 1),
new XElement("NewChild2", 2),
new XElement("NewChild3", 3)
};
root.ReplaceAll(ellArray);
Console.WriteLine(root);
// ReplaceAll with an array of XAttribute objects.
XAttribute[] attArray = {
new XAttribute("NewAtt1", 1),
new XAttribute("NewAtt2", 2),
new XAttribute("NewAtt3", 3)
};
root.ReplaceAll(attArray);
Console.WriteLine(root);
Dim root As XElement = _
<Root>
<Child>child content</Child>
</Root>
' ReplaceAll with an XElement object.
root.ReplaceAll(<NewChild>n</NewChild>)
Console.WriteLine(root)
' ReplaceAll with an XAttribute object.
root.ReplaceAll(New XAttribute("NewAttribute", "n"))
Console.WriteLine(root)
' ReplaceAll with a string.
root.ReplaceAll("Some text")
Console.WriteLine(root)
' ReplaceAll with a double.
Dim dbl As Double = 12.345
root.ReplaceAll(dbl)
Console.WriteLine(root)
' ReplaceAll with a DateTime object.
Dim dt As DateTime = New DateTime(2006, 10, 6, 12, 30, 0)
root.ReplaceAll(dt)
Console.WriteLine(root)
' ReplaceAll with a string array.
' Any collection other than a collection of XElement or XAttribute objects
' are converted to strings. The strings are concatenated and added.
Dim stringArray As String() = { _
"abc", _
"def", _
"ghi" _
}
root.ReplaceAll(stringArray)
Console.WriteLine(root)
' ReplaceAll with an array of XElement objects.
Dim ellArray As XElement() = { _
New XElement("NewChild1", 1), _
New XElement("NewChild2", 2), _
New XElement("NewChild3", 3) _
}
root.ReplaceAll(ellArray)
Console.WriteLine(root)
' ReplaceAll with an array of XAttribute objects.
Dim attArray As XAttribute() = { _
New XAttribute("NewAtt1", 1), _
New XAttribute("NewAtt2", 2), _
New XAttribute("NewAtt3", 3) _
}
root.ReplaceAll(attArray)
Console.WriteLine(root)
Bu örnek aşağıdaki çıkışı oluşturur:
<Root>
<NewChild>n</NewChild>
</Root>
<Root NewAttribute="n" />
<Root>Some text</Root>
<Root>12.345</Root>
<Root>2006-10-06T12:30:00</Root>
<Root>abcdefghi</Root>
<Root>
<NewChild1>1</NewChild1>
<NewChild2>2</NewChild2>
<NewChild3>3</NewChild3>
</Root>
<Root NewAtt1="1" NewAtt2="2" NewAtt3="3" />
Açıklamalar
Bu yöntem önce mevcut içeriği ve öznitelikleri kaldırır. Ardından belirtilen content
öğesini ekler.
Bu yöntem anlık görüntü semantiğini kullanır; yani geçerli öğenin içeriğini yeni içerikle değiştirmeden önce yeni içeriğin ayrı bir kopyasını oluşturur. Bu, geçerli öğenin içeriğini sorgulayabileceğiniz ve sorgunun sonuçlarını belirtilen yeni içerik olarak kullanabileceğiniz anlamına gelir.
Bu işleve geçirilebilen geçerli içerik hakkında ayrıntılı bilgi için bkz. XElement ve XDocument Nesnelerinin Geçerli İçeriği.
Bu yöntem ve olaylarını ChangedChanging oluşturur.
Ayrıca bkz.
Şunlara uygulanır
ReplaceAll(Object[])
- Kaynak:
- XElement.cs
- Kaynak:
- XElement.cs
- Kaynak:
- XElement.cs
Alt düğümleri ve bu öğenin özniteliklerini belirtilen içerikle değiştirir.
public:
void ReplaceAll(... cli::array <System::Object ^> ^ content);
public void ReplaceAll (params object[] content);
public void ReplaceAll (params object?[] content);
member this.ReplaceAll : obj[] -> unit
Public Sub ReplaceAll (ParamArray content As Object())
Parametreler
- content
- Object[]
İçerik nesnelerinin parametre listesi.
Örnekler
Aşağıdaki örnek, bir öğenin içeriğini sorgu sonuçlarıyla değiştirerek linq sorgusunun sonuçlarını bu yönteme geçirir.
XElement xmlTree1 = new XElement("Root",
new XElement("Child1", 1),
new XElement("Child2", 2),
new XElement("Child3", 3),
new XElement("Child4", 4),
new XElement("Child5", 5),
new XElement("Child6", 6)
);
XElement root = new XElement("Root",
new XElement("Child", "child content")
);
root.ReplaceAll(
from el in xmlTree1.Elements()
where((int)el >= 3 && (int)el <= 5)
select el
);
Console.WriteLine(root);
Dim xmlTree1 As XElement = _
<Root>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
<Child6>6</Child6>
</Root>
Dim root As XElement = <Root>
<Child>child content</Child>
</Root>
root.ReplaceAll( _
From el In xmlTree1.Elements() _
Where el.Value >= 3 And el.Value <= 5 _
Select el _
)
Console.WriteLine(root)
Bu örnek aşağıdaki çıkışı oluşturur:
<Root>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Açıklamalar
Bu yöntem önce mevcut içeriği ve öznitelikleri kaldırır. Ardından belirtilen content
öğesini ekler.
Bu yöntem anlık görüntü semantiğini kullanır; yani geçerli öğenin içeriğini yeni içerikle değiştirmeden önce yeni içeriğin ayrı bir kopyasını oluşturur. Bu, geçerli öğenin içeriğini sorgulayabileceğiniz ve sorgunun sonuçlarını belirtilen yeni içerik olarak kullanabileceğiniz anlamına gelir.
Bu işleve geçirilebilen geçerli içerik hakkında ayrıntılı bilgi için bkz. XElement ve XDocument Nesnelerinin Geçerli İçeriği.
Bu yöntem ve olaylarını ChangedChanging oluşturur.