Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

SerializationInfo-Klasse

 

Veröffentlicht: Oktober 2016

Speichert alle Daten, die zum Serialisieren oder Deserialisieren eines Objekts benötigt. Diese Klasse kann nicht vererbt werden.

Namespace:   System.Runtime.Serialization
Assembly:  mscorlib (in mscorlib.dll)

System.Object
  System.Runtime.Serialization.SerializationInfo

[ComVisibleAttribute(true)]
public sealed class SerializationInfo

NameBeschreibung
System_CAPS_pubmethodSerializationInfo(Type, IFormatterConverter)

Erstellt eine neue Instanz der SerializationInfo-Klasse.

System_CAPS_pubmethodSerializationInfo(Type, IFormatterConverter, Boolean)

Initialisiert eine neue Instanz der SerializationInfo-Klasse.

NameBeschreibung
System_CAPS_pubpropertyAssemblyName

Ruft ab oder legt den Assemblynamen des Typs nur während der Serialisierung serialisiert.

System_CAPS_pubpropertyFullTypeName

Ruft ab oder legt den vollständigen Namen der Type zu serialisieren.

System_CAPS_pubpropertyIsAssemblyNameSetExplicit

Ruft ab, ob der Assemblyname explizit festgelegt wurde.

System_CAPS_pubpropertyIsFullTypeNameSetExplicit

Ruft ab, ob der vollständige Typname explizit festgelegt wurde.

System_CAPS_pubpropertyMemberCount

Ruft die Anzahl der Elemente, die hinzugefügt wurden die SerializationInfo Speichern.

System_CAPS_pubpropertyObjectType

Gibt den Typ des Objekts serialisiert werden soll.

NameBeschreibung
System_CAPS_pubmethodAddValue(String, Boolean)

Fügt einen booleschen Wert in die SerializationInfo zu speichern.

System_CAPS_pubmethodAddValue(String, Byte)

Fügt einen 8-Bit-Ganzzahlwert ohne Vorzeichen in den SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, Char)

Fügt den Wert eines Unicode-Zeichens in die SerializationInfo zu speichern.

System_CAPS_pubmethodAddValue(String, DateTime)

Fügt ein DateTime Wert in der SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, Decimal)

Fügt einen decimal-Wert der SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, Double)

Fügt einen Gleitkommawert mit doppelter Genauigkeit der SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, Int16)

Fügt einen 16-Bit-Ganzzahlwert mit Vorzeichen in den SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, Int32)

Fügt einen 32-Bit-Ganzzahlwert mit Vorzeichen in den SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, Int64)

Fügt einen 64-Bit-Ganzzahlwert mit Vorzeichen in den SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, Object)

Fügt das angegebene Objekt in den SerializationInfo Speicher, in dem er mit dem angegebenen Namen zugeordnet ist.

System_CAPS_pubmethodAddValue(String, Object, Type)

Fügt einen Wert in der SerializationInfo Speichern, in dem value zugeordnet ist name und wird als serialisiert Typetype.

System_CAPS_pubmethodAddValue(String, SByte)

Fügt ein 8-Bit-Ganzzahlwert mit Vorzeichen in den SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, Single)

Fügt einen Gleitkommawert mit einfacher Genauigkeit der SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, UInt16)

Fügt einen 16-Bit-Ganzzahlwert ohne Vorzeichen in den SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, UInt32)

Fügt einen 32-Bit-Ganzzahlwert ohne Vorzeichen in den SerializationInfo Speichern.

System_CAPS_pubmethodAddValue(String, UInt64)

Fügt einen 64-Bit-Ganzzahlwert ohne Vorzeichen in den SerializationInfo Speichern.

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_pubmethodGetBoolean(String)

Ruft einen booleschen Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetByte(String)

Ruft einen 8-Bit-Ganzzahl ohne Vorzeichen-Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetChar(String)

Ruft den Wert eines Unicode-Zeichens aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetDateTime(String)

Ruft einen DateTime Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetDecimal(String)

Ruft einen decimal-Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetDouble(String)

Ruft einen Gleitkommawert mit doppelter Genauigkeit den Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetEnumerator()

Gibt eine SerializationInfoEnumerator mit Name-Wert-Paare im Durchlaufen der SerializationInfo Speichern.

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetInt16(String)

Ruft einen Wert 16-Bit-Ganzzahl mit Vorzeichen aus dem SerializationInfo zu speichern.

System_CAPS_pubmethodGetInt32(String)

Ruft einen 32-Bit-Ganzzahl mit Vorzeichen-Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetInt64(String)

Ruft einen 64-Bit-Ganzzahl mit Vorzeichen-Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetSByte(String)

Ruft einen Wert 8-Bit-Ganzzahl mit Vorzeichen aus dem SerializationInfo zu speichern.

System_CAPS_pubmethodGetSingle(String)

Ruft einen Gleitkommawert mit einfacher Genauigkeit den Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetString(String)

Ruft einen String Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_pubmethodGetUInt16(String)

Ruft einen 16-Bit-Ganzzahl ohne Vorzeichen-Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetUInt32(String)

Ruft einen 32-Bit-Ganzzahl ohne Vorzeichen-Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetUInt64(String)

Ruft einen 64-Bit-Ganzzahl ohne Vorzeichen-Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodGetValue(String, Type)

Ruft einen Wert aus der SerializationInfo zu speichern.

System_CAPS_pubmethodSetType(Type)

Legt die Type für das zu serialisierende Objekt.

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

Diese Klasse wird von Objekten mit benutzerdefiniertem Serialisierungsverhalten verwendet. Die GetObjectData -Methode entweder ISerializable oder ISerializationSurrogate füllt die SerializationInfo mit Name, Typ und Wert aller zu serialisierenden Informationen speichern. Die entsprechende Funktion kann diese Informationen extrahiert werden, während der Deserialisierung.

Objekte werden hinzugefügt der SerializationInfo Speichern, während der Serialisierung mithilfe der AddValue Methoden und extrahiert aus der SerializationInfo Speichern, während der Deserialisierung mithilfe der GetValue Methoden.

Weitere Informationen zum Anpassen der Serialisierung finden Sie unter Benutzerdefinierte Serialisierung.

Das folgende Codebeispiel veranschaulicht die SerializationInfo für die benutzerdefinierte Serialisierung und Deserialisierung verschiedener Werte.

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
Verfügbar seit 1.1

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: