(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

SerializationInfo.GetValue-Methode

Ruft einen Wert aus dem SerializationInfo-Speicher ab.

Namespace:  System.Runtime.Serialization
Assembly:  mscorlib (in mscorlib.dll)
public Object GetValue(
	string name,
	Type type
)

Parameter

name
Typ: System.String
Der dem abzurufenden Wert zugeordnete Name.
type
Typ: System.Type
Der Type des abzurufenden Werts. Wenn der gespeicherte Wert nicht in diesen Typ konvertiert werden kann, löst das System eine InvalidCastException aus.

Rückgabewert

Typ: System.Object
Das Objekt vom angegebenen Type, dem der name zugeordnet ist.
AusnahmeBedingung
ArgumentNullException

name oder type ist null.

InvalidCastException

Der Wert, dem der name zugeordnet ist, kann nicht in den type konvertiert werden.

SerializationException

In der aktuellen Instanz wurde kein Element mit dem angegebenen Namen gefunden.

Wenn die in der SerializationInfo gespeicherten Daten dem angeforderten Typ oder einer seiner abgeleiteten Klassen entsprechen, wird dieser Wert direkt zurückgegeben. Andernfalls wird IFormatterConverter.Convert aufgerufen, um den Wert in den entsprechenden Typ zu konvertieren.

Der von der GetValue-Methode zurückgegebene Wert kann stets problemlos in den im type-Parameter angegebenen Typ umgewandelt werden.

Im folgenden Codebeispiel wird die Verwendung der GetValue-Methode veranschaulicht.


// A serializable LinkedList example.  For the full LinkedList implementation
// see the Serialization sample.
[Serializable()]
class LinkedList: ISerializable {

   public static void Main() {}

   Node m_head = null;
   Node m_tail = null;

   // Serializes the object.
   [SecurityPermissionAttribute(SecurityAction.Demand, SerializationFormatter=true)]
   public void GetObjectData(SerializationInfo info, StreamingContext context){
      // Stores the m_head and m_tail references in the SerializationInfo info.
      info.AddValue("head", m_head, m_head.GetType());
      info.AddValue("tail", m_tail, m_tail.GetType());
   }

   // Constructor that is called automatically during deserialization.
   // Reconstructs the object from the information in SerializationInfo info
   [SecurityPermissionAttribute(SecurityAction.Demand, SerializationFormatter=true)]
   private LinkedList(SerializationInfo info, StreamingContext context)
   {      
      Node temp = new Node(0);
      // Retrieves the values of Type temp.GetType() from SerializationInfo info
      m_head = (Node)info.GetValue("head", temp.GetType());
      m_tail = (Node)info.GetValue("tail", temp.GetType());
   }
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.