XmlNode.InnerXml Özellik
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.
Bu düğümün yalnızca alt düğümlerini temsil eden işaretlemeyi alır veya ayarlar.
public:
virtual property System::String ^ InnerXml { System::String ^ get(); void set(System::String ^ value); };
public virtual string InnerXml { get; set; }
member this.InnerXml : string with get, set
Public Overridable Property InnerXml As String
Özellik Değeri
Varsayılan öznitelikler dahil değil, bu düğümün alt düğümlerinin işaretlemesi.
Özel durumlar
Alt düğümleri olmayan bir düğümde bu özelliği ayarlama.
Bu özellik ayarlanırken belirtilen XML düzgün biçimlendirilmemiş.
Örnekler
Aşağıdaki örnek ve InnerXml
özelliklerini karşılaştırırInnerText.
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
int main()
{
XmlDocument^ doc = gcnew XmlDocument;
doc->LoadXml( "<root>"
"<elem>some text<child/>more text</elem>"
"</root>" );
XmlNode^ elem = doc->DocumentElement->FirstChild;
// Note that InnerText does not include the markup.
Console::WriteLine( "Display the InnerText of the element..." );
Console::WriteLine( elem->InnerText );
// InnerXml includes the markup of the element.
Console::WriteLine( "Display the InnerXml of the element..." );
Console::WriteLine( elem->InnerXml );
// Set InnerText to a string that includes markup.
// The markup is escaped.
elem->InnerText = "Text containing <markup/> will have char(<) and char(>) escaped.";
Console::WriteLine( elem->OuterXml );
// Set InnerXml to a string that includes markup.
// The markup is not escaped.
elem->InnerXml = "Text containing <markup/>.";
Console::WriteLine( elem->OuterXml );
}
using System;
using System.Xml;
public class Test {
public static void Main() {
XmlDocument doc = new XmlDocument();
doc.LoadXml("<root>"+
"<elem>some text<child/>more text</elem>" +
"</root>");
XmlNode elem = doc.DocumentElement.FirstChild;
// Note that InnerText does not include the markup.
Console.WriteLine("Display the InnerText of the element...");
Console.WriteLine( elem.InnerText );
// InnerXml includes the markup of the element.
Console.WriteLine("Display the InnerXml of the element...");
Console.WriteLine(elem.InnerXml);
// Set InnerText to a string that includes markup.
// The markup is escaped.
elem.InnerText = "Text containing <markup/> will have char(<) and char(>) escaped.";
Console.WriteLine( elem.OuterXml );
// Set InnerXml to a string that includes markup.
// The markup is not escaped.
elem.InnerXml = "Text containing <markup/>.";
Console.WriteLine( elem.OuterXml );
}
}
Imports System.Xml
public class Test
public shared sub Main()
Dim doc as XmlDocument = new XmlDocument()
doc.LoadXml("<root>"& _
"<elem>some text<child/>more text</elem>" & _
"</root>")
Dim elem as XmlNode = doc.DocumentElement.FirstChild
' Note that InnerText does not include the markup.
Console.WriteLine("Display the InnerText of the element...")
Console.WriteLine( elem.InnerText )
' InnerXml includes the markup of the element.
Console.WriteLine("Display the InnerXml of the element...")
Console.WriteLine(elem.InnerXml)
' Set InnerText to a string that includes markup.
' The markup is escaped.
elem.InnerText = "Text containing <markup/> will have char(<) and char(>) escaped."
Console.WriteLine( elem.OuterXml )
' Set InnerXml to a string that includes markup.
' The markup is not escaped.
elem.InnerXml = "Text containing <markup/>."
Console.WriteLine( elem.OuterXml )
end sub
end class
Açıklamalar
Bu özelliği alt düğümleri olmayan bir düğümden (örneğin, bir Metin düğümü) ayarlamaya çalışmak bir özel durum oluşturur. Aksi takdirde, ayar InnerXml
düğümün alt düğümlerini verilen dizenin ayrıştırılmış içeriğiyle değiştirir. Ayrıştırma geçerli ad alanı bağlamında yapılır.
Bu özellik, Belge Nesne Modeli(DOM) için bir Microsoft uzantısıdır.
Not
InnerXml
DOM'yi değiştirmenin verimli bir yolu değildir. Karmaşık düğümleri değiştirirken performans sorunları olabilir. Düğümler oluşturmak ve , InsertAfter
, AppendChild``RemoveChild
ve gibi InsertBefore
yöntemleri kullanarak Xml belgesini değiştirmek daha verimlidir.