War diese Seite hilfreich?
Ihr Feedback ist uns wichtig. Teilen Sie uns Ihre Meinung mit.
Weiteres Feedback?
1500 verbleibende Zeichen
GetValue-Methode
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

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.2, 4.5.1, 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 Phone 8.1, Windows Phone 8, 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)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2015 Microsoft