Ejemplo Serialization
Actualización: noviembre 2007
Esta solución muestra cómo se serializa y deserializa un objeto.
Para obtener ejemplos e instrucciones para la instalación
Siga uno o varios de los procedimientos siguientes:
En el menú Ayuda, haga clic en Ejemplos.
El archivo Léame muestra información sobre los ejemplos.
Visite el sitio web Visual Studio 2008 Samples. Están disponibles las versiones de ejemplos más recientes.
Busque los ejemplos en el equipo en el que está instalado Visual Studio. De manera predeterminada, los ejemplos y el archivo Léame se instalan en unidad:\Archivos de programa\Microsoft Visual Studio 9.0\Samples\lcid. Para las versiones Express de Visual Studio, todos los ejemplos están en línea.
Para obtener más información, vea Localizar archivos de ejemplo.
.
Nota de seguridad: |
---|
En este ejemplo de código se ilustra un concepto y únicamente se muestra el código correspondiente a dicho concepto. Es posible que no cumpla los requisitos de seguridad de un entorno concreto y, por tanto, no debería utilizarse tal y como se muestra. Se recomienda agregar código de seguridad y de control de errores para que los proyectos sean más seguros y sólidos. Microsoft proporciona este ejemplo "tal cual" sin ninguna garantía. |
Para ejecutar este ejemplo
- Presione F5.
Demostraciones
Esta aplicación contiene dos clases, una con serialización estándar y otra con serialización personalizada. La interfaz de usuario incluye botones para serializar y deserializar las dos clases. La clase con serialización estándar se puede serializar en un archivo SOAP o un archivo binario. La clase con serialización personalizada se serializa en un archivo SOAP. Se utiliza un control TextBox para mostrar los archivos SOAP. Las dos clases tienen el atributo SerializableAttribute. Las clases se describen en la tabla siguiente.
Miembro de clase |
Clase de serialización |
Clase de serialización personalizada |
---|---|---|
PublicVariable |
La variable pública se serializa y deserializa sin cambios. |
La variable pública se serializa y deserializa sin cambios. |
PublicProperty |
La variable privada que admite la propiedad se serializa y deserializa sin cambios. |
La variable privada que admite la propiedad se serializa como -1, sin tener en cuenta el valor establecido en la interfaz de usuario. Se deserializa por consiguiente como -1. |
NonSerializedVariable |
No se serializa esta variable porque está marcada con NonSerializedAttribute. No se serializa la variable pública y el valor deserializado es 0. |
Aunque NonSerializedAttribute marca la variable, se serializa porque la serialización personalizada reemplaza a esta configuración. La variable pública se serializa y deserializa sin cambios. |
Se muestran tres tipos de serialización:
Formato SOAP Class1 se serializa mediante la clase SoapFormatter.
Formato binario Class1 se serializa mediante la clase BinaryFormatter.
Formato personalizado Class2 implementa la interfaz ISerializable, incluido el método GetObjectData para efectuar la serialización personalizada.