MissingInteropDataException-Klasse (.NET Native)
.NET für Windows-Apps für Windows 10, .NET Native nur
Die Ausnahme, die ausgelöst wird, wenn eine manuelle Marshallingmethode aufgerufen wird, aber keine Metadaten für einen Typ durch statische Analyse oder in einer Laufzeitrichtliniendatei gefunden werden.
Namespace: System.Runtime.CompilerServices
Wichtig
Die MissingInteropDataException
Klasse ist ausschließlich für die interne Verwendung durch die .NET Native-Toolkette vorgesehen. Sie ist nicht zur Verwendung in Code von Drittanbietern bestimmt, und die Ausnahme darf nicht im Anwendungscode behandelt werden. Stattdessen vermeiden Sie die Ausnahme, indem Sie Einträge zu Ihrer Laufzeitanweisungsdatei hinzufügen. Weitere Informationen finden Sie im Abschnitt Hinweise.
Syntax
public class MissingInteropDataException : Exception
Die MissingInteropDataException
-Klasse verfügt über die folgenden Member:
Konstruktoren
Konstruktor | Beschreibung |
---|---|
public MissingInteropDataException(String resourceId, Type pertinentType) |
Initialisiert eine neue Instanz der MissingInteropDataException -Klasse mit der ID einer vom System generierten Meldung, die den Fehler und den Typ, dessen Daten fehlen, beschreibt. Dieser Konstruktor ist nur für die interne Verwendung durch die .NET Native-Toolkette vorgesehen. |
Eigenschaften
Eigenschaften | Beschreibung |
---|---|
public IDictionary Data { get; } |
Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen zur Ausnahme bereitstellen. (Geerbt von System.Exception.) |
public string HelpLink { get; set; } |
Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest. (Geerbt von System.Exception.) |
public int HResult { get; protected set; } |
Ruft HRESULT , einen codierten numerischen Wert, der einer bestimmten Ausnahme zugewiesen ist, ab oder legt ihn fest. (Geerbt von System.Exception.) |
public Exception InnerException { get; } |
Ruft die Ausnahme ab, die die aktuelle Ausnahme verursacht hat. (Geerbt von System.Exception.) |
public string Message { get; } |
Ruft eine Meldung ab, mit der die aktuelle Ausnahme beschrieben wird. (Geerbt von System.Exception.) |
public Type MissingType { get; private set; } |
Ruft den Typ, dessen Daten fehlen, ab oder legt ihn fest. |
public string Source { get; set; } |
Ruft den Namen der App oder des Objekts ab, die bzw. das den Fehler verursacht hat, oder legt den Namen fest. (Geerbt von System.Exception.) |
public string StackTrace { get; } |
Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab. (Geerbt von System.Exception.) |
public MethodBase TargetSite { get; } |
Ruft die Methode ab, die die aktuelle Ausnahme ausgelöst hat. (Geerbt von System.Exception.) |
Methoden
Methode | Beschreibung |
---|---|
public bool Equals(Object obj) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object.) |
protected void Finalize() |
Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von Object.) |
public Exception GetBaseException() |
Gibt die Ausnahme zurück, die die Grundursache für eine oder mehrere nachfolgende Ausnahmen ist. (Geerbt von System.Exception.) |
public int GetHashCode() |
Gibt einen Hashcode für eine MissingInteropDataException -Instanz zurück. (Geerbt von Object.) |
public void GetObjectData(SerializationInfo info, StreamingContext context) |
Legt ein SerializationInfo-Objekt mit Informationen über die Ausnahme fest. (Geerbt von System.Exception.) |
public Type GetType() |
Ruft den Laufzeittyp der aktuellen Instanz ab. (Geerbt von System.Exception.) |
protected Object MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Objekts. (Geerbt von Object.) |
public string ToString() |
Gibt die Zeichenfolgendarstellung der aktuellen Ausnahme zurück. (Geerbt von System.Exception.) |
Ereignisse
Event | Beschreibung |
---|---|
protected event EventHandler<SafeSerializationEventArgs> SerializeObjectState |
Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt mit serialisierten Daten über die Ausnahme zu erstellen. (Geerbt von System.Exception.) |
Nutzungsdetails
Die MissingInteropDataException
-Ausnahme wird ausgelöst, wenn ein Methodenaufruf an eine COM- oder Windows-Runtime-Komponente nicht erfolgreich ausgeführt werden kann, weil Typinformationen nicht zur Verfügung stehen.
Die Metadaten, die einer App zur Laufzeit zur Verfügung stehen, werden durch die Laufzeitanweisungsdatei (XML-Konfiguration) *.rd.xml definiert. Um das Auslösen dieser Ausnahme durch die App zu verhindern, müssen Sie diese Datei ändern und die Metadaten definieren, die zur Laufzeit vorhanden sein müssen. In den meisten Fällen beheben Sie diesen Fehler, indem Sie einem geeigneten Programmelement in der Laufzeitanweisungsdatei ein MarshalObject
-, MarshalDelegate
- oder MarshalStructure
-Attribut hinzufügen. Informationen zum Format von Laufzeitanweisungen finden Sie unter Laufzeitanweisungs-Konfigurationsdatei (rd.xml) Referenz.
Wichtig
Da diese Ausnahme angibt, dass Metadaten, die von Ihrer Anwendung benötigt werden, zur Laufzeit nicht verfügbar sind, sollten Sie diese Ausnahme nicht in einem try
/catch
Block behandeln. Stattdessen sollten Sie die Ursache der Ausnahme ermitteln und durch Hinzufügen des entsprechenden Eintrags zu einer Laufzeitdirektivendatei beseitigen.
Die MissingInteropDataException
-Klasse enthält einen einzelnen eindeutigen Member, die MissingType
-Eigenschaft, die den Typ angibt, dessen Metadaten für einen erfolgreichen Aufruf benötigt werden. Alle anderen Eigenschaften werden von der Basisklasse System.Exception geerbt.