Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase SerializationInfo

 

Publicado: octubre de 2016

Almacena todos los datos necesarios para serializar o deserializar un objeto. Esta clase no puede heredarse.

Espacio de nombres:   System.Runtime.Serialization
Ensamblado:  mscorlib (en mscorlib.dll)

System.Object
  System.Runtime.Serialization.SerializationInfo

[ComVisibleAttribute(true)]
public sealed class SerializationInfo

NombreDescripción
System_CAPS_pubmethodSerializationInfo(Type, IFormatterConverter)

Crea una nueva instancia de la clase SerializationInfo.

System_CAPS_pubmethodSerializationInfo(Type, IFormatterConverter, Boolean)

Inicializa una nueva instancia de la clase SerializationInfo.

NombreDescripción
System_CAPS_pubpropertyAssemblyName

Obtiene o establece el nombre del ensamblado del tipo que se va a serializar sólo durante la serialización.

System_CAPS_pubpropertyFullTypeName

Obtiene o establece el nombre completo de la Type para serializar.

System_CAPS_pubpropertyIsAssemblyNameSetExplicit

Obtiene si se ha establecido explícitamente el nombre del ensamblado.

System_CAPS_pubpropertyIsFullTypeNameSetExplicit

Obtiene si se ha establecido explícitamente el nombre de tipo completo.

System_CAPS_pubpropertyMemberCount

Obtiene el número de miembros que se han agregado a la SerializationInfo almacenar.

System_CAPS_pubpropertyObjectType

Devuelve el tipo del objeto que se va a serializar.

NombreDescripción
System_CAPS_pubmethodAddValue(String, Boolean)

Agrega un valor booleano en el SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Byte)

Agrega un valor entero de 8 bits sin signo en la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Char)

Agrega un valor de carácter Unicode en el SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, DateTime)

Agrega un DateTime valor en el SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Decimal)

Agrega un valor decimal en el SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Double)

Agrega un valor de punto flotante de precisión doble en la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Int16)

Agrega un valor entero de 16 bits con signo en la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Int32)

Agrega un valor entero de 32 bits con signo en la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Int64)

Agrega un valor entero de 64 bits con signo en la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Object)

Agrega el objeto especificado en el SerializationInfo tienda, donde se asocia con un nombre especificado.

System_CAPS_pubmethodAddValue(String, Object, Type)

Agrega un valor a la SerializationInfo almacenar, donde value está asociado a name y se serializa como de Typetype.

System_CAPS_pubmethodAddValue(String, SByte)

Agrega un valor entero de 8 bits con signo en la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, Single)

Agrega un valor de punto flotante de precisión sencilla a la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, UInt16)

Agrega un valor entero de 16 bits sin signo en la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, UInt32)

Agrega un valor entero de 32 bits sin signo en la SerializationInfo almacenar.

System_CAPS_pubmethodAddValue(String, UInt64)

Agrega un valor entero de 64 bits sin signo en la SerializationInfo almacenar.

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

System_CAPS_pubmethodGetBoolean(String)

Recupera un valor booleano de la SerializationInfo almacenar.

System_CAPS_pubmethodGetByte(String)

Recupera un valor entero de 8 bits sin signo de la SerializationInfo almacenar.

System_CAPS_pubmethodGetChar(String)

Recupera un valor de carácter Unicode de la SerializationInfo almacenar.

System_CAPS_pubmethodGetDateTime(String)

Recupera un DateTime valor desde el SerializationInfo almacenar.

System_CAPS_pubmethodGetDecimal(String)

Recupera un valor decimal de la SerializationInfo almacenar.

System_CAPS_pubmethodGetDouble(String)

Recupera un valor de punto flotante de precisión doble de los SerializationInfo almacenar.

System_CAPS_pubmethodGetEnumerator()

Devuelve un SerializationInfoEnumerator utiliza para recorrer en iteración los pares de nombre y valor en el SerializationInfo almacenar.

System_CAPS_pubmethodGetHashCode()

Sirve como la función hash predeterminada.(Heredado de Object).

System_CAPS_pubmethodGetInt16(String)

Recupera un valor entero de 16 bits con signo de la SerializationInfo almacenar.

System_CAPS_pubmethodGetInt32(String)

Recupera un valor entero de 32 bits con signo de la SerializationInfo almacenar.

System_CAPS_pubmethodGetInt64(String)

Recupera un valor entero con signo de 64 bits de la SerializationInfo almacenar.

System_CAPS_pubmethodGetSByte(String)

Recupera un valor entero de 8 bits con signo de la SerializationInfo almacenar.

System_CAPS_pubmethodGetSingle(String)

Recupera un valor de punto flotante de precisión sencilla de los SerializationInfo almacenar.

System_CAPS_pubmethodGetString(String)

Recupera un String valor desde el SerializationInfo almacenar.

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_pubmethodGetUInt16(String)

Recupera un valor entero sin signo de 16 bits de la SerializationInfo almacenar.

System_CAPS_pubmethodGetUInt32(String)

Recupera un valor entero sin signo de 32 bits de la SerializationInfo almacenar.

System_CAPS_pubmethodGetUInt64(String)

Recupera un valor entero sin signo de 64 bits de la SerializationInfo almacenar.

System_CAPS_pubmethodGetValue(String, Type)

Recupera un valor de la SerializationInfo almacenar.

System_CAPS_pubmethodSetType(Type)

Establece la Type del objeto que se va a serializar.

System_CAPS_pubmethodToString()

Devuelve una cadena que representa al objeto actual. (Heredado de Object).

Esta clase se utiliza por objetos con el comportamiento de serialización personalizado. El GetObjectData método bien ISerializable o ISerializationSurrogate rellena el SerializationInfo el almacén con el nombre, tipo y valor de cada dato que desea serializar. Durante la deserialización, la función correspondiente extrae esta información.

Se agregan objetos a la SerializationInfo almacenar en el momento de serialización utilizando la AddValue métodos y se extraen desde el SerializationInfo almacenar en la deserialización mediante el GetValue métodos.

Para obtener más información acerca de cómo personalizar la serialización, vea Serialización personalizada.

En el ejemplo de código siguiente se muestra la SerializationInfo para la serialización y deserialización de varios valores personalizadas.

using System;
using System.Text;
using System.IO;
// Add references to Soap and Binary formatters.
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization.Formatters.Soap ;
using System.Runtime.Serialization;


[Serializable]
public class MyItemType : ISerializable
{
    public MyItemType()
    {
        // Empty constructor required to compile.
    }

    // The value to serialize.
    private string myProperty_value;

    public string MyProperty
    {
        get { return myProperty_value; }
        set { myProperty_value = value; }
    }

    // Implement this method to serialize data. The method is called 
    // on serialization.
    public void GetObjectData(SerializationInfo info, StreamingContext context)
    {
        // Use the AddValue method to specify serialized values.
        info.AddValue("props", myProperty_value, typeof(string));

    }

    // The special constructor is used to deserialize values.
    public MyItemType(SerializationInfo info, StreamingContext context)
    {
        // Reset the property value using the GetValue method.
        myProperty_value = (string) info.GetValue("props", typeof(string));
    }
}

// This is a console application. 
public static class Test
{
    static void Main()
    {
        // This is the name of the file holding the data. You can use any file extension you like.
        string fileName = "dataStuff.myData";

        // Use a BinaryFormatter or SoapFormatter.
        IFormatter formatter = new BinaryFormatter();
        //IFormatter formatter = new SoapFormatter();

        Test.SerializeItem(fileName, formatter); // Serialize an instance of the class.
        Test.DeserializeItem(fileName, formatter); // Deserialize the instance.
        Console.WriteLine("Done");
        Console.ReadLine();
    }

    public static void SerializeItem(string fileName, IFormatter formatter)
    {
        // Create an instance of the type and serialize it.
        MyItemType t = new MyItemType();
        t.MyProperty = "Hello World";

        FileStream s = new FileStream(fileName , FileMode.Create);
        formatter.Serialize(s, t);            
        s.Close();
    }


    public static void DeserializeItem(string fileName, IFormatter formatter)
    {
        FileStream s = new FileStream(fileName, FileMode.Open);
        MyItemType t = (MyItemType)formatter.Deserialize(s);
        Console.WriteLine(t.MyProperty);            
    }       
}

.NET Framework
Disponible desde 1.1

Cualquier miembro ( Compartido en Visual Basic) estático público de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Volver al principio
Mostrar: