3 de Octubre 2003

Serializar Objetos

La serialización de objetos siempre me ha parecido una característica muy importante en cualquier arquitectura, nos permite:



  • Desacoplar sistemas basándonos en su representación serializada
  • Crear value objects con datos desde su representación serializada

En .NET tenemos dos tipos de serializadores: XmlSerializer y SoapFormatter (tb está el BinaryFormatter, pero ese lo dejamos para otro día).
La principal diferencia radica en que el primero serializa el interfaz público de la clase y los Formatter serializan el ObjectGraph de la instancia en memoria.

Gracias a esta clase podemos serializar objetos como strings XML, lo mejor es que no es necesario crear un fichero físico y podemos serializarlo en memoria:

 using System;
 using System.IO;
 using System.Xml.Serialization;
 
 

namespace ListSerializerDemo
{
···public class XmlSerializerHelper
···{
······static public string Serialize(object o)
······{
·········string result = String.Empty;
·········XmlSerializer ser = new XmlSerializer(o.GetType());
·········MemoryStream s = new MemoryStream();
·········ser.Serialize(s, o);
·········s.Position = 0;
·········StreamReader sr = new StreamReader(s, System.Text.Encoding.UTF8);
·········result = sr.ReadToEnd();
·········sr.Close();
·········s.Close();
·········return result;
·········}
······}
}

Posted by rido at 3 de Octubre 2003 a las 09:25 PM
Comments

Quid Novi - What's New?

Posted by: bondage straps on 10 de Julio 2004 a las 01:36 PM

Per varios usus artem experientia fecit - Through different exercises practice has brought skill. (Manilius)

Posted by: mature mistress on 20 de Julio 2004 a las 05:56 PM
Post a comment