IXmlSerializable.WriteXml(XmlWriter) Metoda
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í.
Převede objekt na jeho reprezentaci XML.
public:
void WriteXml(System::Xml::XmlWriter ^ writer);
public void WriteXml (System.Xml.XmlWriter writer);
abstract member WriteXml : System.Xml.XmlWriter -> unit
Public Sub WriteXml (writer As XmlWriter)
Parametry
Příklady
Následující příklad znázorňuje implementaci WriteXml metody.
virtual void WriteXml( XmlWriter^ writer )
{
writer->WriteString( personName );
}
public void WriteXml (XmlWriter writer)
{
writer.WriteString(personName);
}
Následující příklad znázorňuje použití XmlSerializer třídy k deserializaci tohoto objektu.
#using <System.Xml.dll>
#using <System.dll>
#using <Person.dll>
using namespace System;
using namespace System::Xml;
using namespace System::Xml::Serialization;
int main()
{
// Create a person object.
Person ^ fred = gcnew Person( "Fred Flintstone" );
// Serialize the object to a file.
XmlTextWriter^ writer = gcnew XmlTextWriter( "test.xml", nullptr );
XmlSerializer^ serializer = gcnew XmlSerializer( Person::typeid );
serializer->Serialize( writer, fred );
}
using System;
using System.Xml;
using System.Xml.Serialization;
public class Writer {
public static void Main() {
// Create a person object.
Person fred = new Person("Fred Flintstone");
// Serialize the object to a file.
XmlTextWriter writer = new XmlTextWriter("test.xml", null);
XmlSerializer serializer = new XmlSerializer(typeof(Person));
serializer.Serialize(writer, fred);
}
}
Poznámky
Implementace WriteXml , kterou zadáte, by měla zapsat reprezentaci XML objektu. Architektura zapíše element obálky a umístí zapisovač XML po jeho spuštění. Vaše implementace může napsat její obsah, včetně podřízených prvků. Architektura pak zavře element obálky.
Napište do datového XmlWriter proudu dostatečné informace, aby ReadXml metoda mohla rekonstituovat objekt.
Pokud například váš stav objektu obsahuje maticovou proměnnou, nezapomeňte napsat délku pole nebo použít nadřazený prvek, který obsahuje prvky popisované maticové hodnoty, abyste věděli, kolik hodnot se má přečíst při rekonstituci objektu.