IXmlSerializable.WriteXml(XmlWriter) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Converte um objeto em sua representação 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)
Parâmetros
Exemplos
O exemplo a seguir ilustra uma implementação do WriteXml método.
virtual void WriteXml( XmlWriter^ writer )
{
writer->WriteString( personName );
}
public void WriteXml (XmlWriter writer)
{
writer.WriteString(personName);
}
O exemplo a seguir ilustra o uso da XmlSerializer classe para desserializar esse objeto.
#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);
}
}
Comentários
A WriteXml implementação fornecida deve gravar a representação XML do objeto. A estrutura grava um elemento wrapper e posiciona o gravador XML após seu início. Sua implementação pode escrever seu conteúdo, incluindo elementos filho. Em seguida, a estrutura fecha o elemento wrapper.
Escreva informações suficientes no XmlWriter fluxo para permitir que o ReadXml método reconstitua seu objeto.
Por exemplo, se o estado do objeto incluir uma variável de matriz, escreva o comprimento da matriz ou use um elemento pai para conter os elementos que descrevem os valores da matriz, para que você saiba quantos valores ler quando o objeto for reconstituído.