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

NotSupportedException-Klasse

 

Veröffentlicht: Oktober 2016

Die Ausnahme, die ausgelöst wird, wenn eine aufgerufene Methode nicht unterstützt oder versucht wird, lesend, suchend oder schreibend auf einen Stream zuzugreifen, der die aufgerufene Funktion nicht unterstützt.

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

System.Object
  System.Exception
    System.SystemException
      System.NotSupportedException
        System.PlatformNotSupportedException

[<SerializableAttribute>]
[<ComVisibleAttribute(true)>]
type NotSupportedException = 
    class
        inherit SystemException
    end

NameBeschreibung
System_CAPS_pubmethodNotSupportedException()

Initialisiert eine neue Instanz der der NotSupportedException -Klasse, die Message -Eigenschaft der neuen Instanz mit einer vom System gelieferten Meldung, die den Fehler beschreibt. Diese Meldung berücksichtigt die aktuelle Systemkultur.

System_CAPS_protmethodNotSupportedException(SerializationInfo, StreamingContext)

Initialisiert eine neue Instanz der NotSupportedException-Klasse mit serialisierten Daten.

System_CAPS_pubmethodNotSupportedException(String)

Initialisiert eine neue Instanz der NotSupportedException-Klasse mit einer angegebenen Fehlermeldung.

System_CAPS_pubmethodNotSupportedException(String, Exception)

Initialisiert eine neue Instanz der NotSupportedException-Klasse mit einer angegebenen Fehlermeldung und einem Verweis auf die innere Ausnahme, die diese Ausnahme ausgelöst hat.

NameBeschreibung
System_CAPS_pubpropertyData

Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen über die Ausnahme bereitstellen.(Geerbt von „Exception“.)

System_CAPS_pubpropertyHelpLink

Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest.(Geerbt von „Exception“.)

System_CAPS_pubpropertyHResult

Ruft HRESULT ab oder legt HRESULT fest. Dies ist ein codierter Wert, der einer bestimmten Ausnahme zugeordnet ist.(Geerbt von „Exception“.)

System_CAPS_pubpropertyInnerException

Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursacht hat.(Geerbt von „Exception“.)

System_CAPS_pubpropertyMessage

Ruft eine Meldung ab, die die aktuelle Ausnahme beschreibt.(Geerbt von „Exception“.)

System_CAPS_pubpropertySource

Gibt den Namen der Anwendung oder des Objekts zurück, die bzw. das den Fehler verursacht hat, oder legt diesen fest.(Geerbt von „Exception“.)

System_CAPS_pubpropertyStackTrace

Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab.(Geerbt von „Exception“.)

System_CAPS_pubpropertyTargetSite

Ruft die Methode ab, die die aktuelle Ausnahme auslöst.(Geerbt von „Exception“.)

NameBeschreibung
System_CAPS_pubmethodEquals(Object)

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

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetBaseException()

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die ursprüngliche Ursache für eine oder mehrere nachfolgende Ausnahmen ist.(Geerbt von „Exception“.)

System_CAPS_pubmethodGetHashCode()

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

System_CAPS_pubmethodGetObjectData(SerializationInfo, StreamingContext)

Legt beim Überschreiben in einer abgeleiteten Klasse die SerializationInfo mit Informationen über die Ausnahme fest.(Geerbt von „Exception“.)

System_CAPS_pubmethodGetType()

Ruft den Laufzeittyp der aktuellen Instanz ab.(Geerbt von „Exception“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodToString()

Erstellt eine Zeichenfolgendarstellung der aktuellen Ausnahme und gibt diese zurück.(Geerbt von „Exception“.)

NameBeschreibung
System_CAPS_proteventSerializeObjectState

Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt zu erstellen, das serialisierte Daten für die Ausnahme enthält.(Geerbt von „Exception“.)

NotSupportedException Gibt an, dass keine Implementierung für eine aufgerufene Methode oder Eigenschaft vorhanden ist.

NotSupportedException verwendet HRESULT COR_E_NOTSUPPORTED mit den Wert 0 x 80131515.

Eine Liste der anfänglichen Eigenschaftenwerte für eine Instanz von NotSupportedException, finden Sie unter der NotSupportedException Konstruktoren.

Sie sollten erwägen, Auslösen einer NotSupportedException Ausnahme in den folgenden Fällen:

  • Implementieren Sie eine allgemeine Schnittstelle und einige der Methoden weisen keine sinnvollen Implementierung. Z. B. beim Erstellen einer Datums- und Uhrzeitangabe geben, implementiert die IConvertible -Schnittstelle, die Sie auslösen würde eine NotSupportedException Ausnahme für die meisten der Konvertierungen.

  • Sie haben von einer abstrakten Klasse geerbt, die erfordert, dass Sie eine Reihe von Methoden überschreiben. Allerdings sind Sie nur darauf vorbereitet, eine Implementierung für eine Teilmenge dieser bereitstellen. Die Methoden, die Sie nicht implementieren möchten, können Sie auswählen, löst einen NotSupportedException.

  • Sie definieren einen allgemeinen Typ mit dem Status, die bedingt Vorgänge ermöglicht. Der Typ kann z. B. schreibgeschützten oder Lese-/ Schreibzugriff. In diesem Fall:

    • Wenn das Objekt schreibgeschützt ist, versucht, um die Eigenschaften der Instanz oder rufen Methoden Werte zuzuweisen, den Zustand der Instanz zu ändern, lösen eine NotSupportedException Ausnahme.

    • Sollten Sie eine Eigenschaft, die zurückgibt implementieren einen Boolean -Wert, der angibt, ob bestimmte Funktionen verfügbar sind. Z. B. für einen Typ, der nur-Lese oder Lese-/ Schreibzugriff sein kann, Sie könnten implementieren eine IsReadOnly -Eigenschaft, die angibt, ob die Gruppe der Schreib-Lese-Methoden sind verfügbar oder nicht verfügbar.

Die NotSupportedException Ausnahme gibt an, dass eine Methode keine Implementierung verfügt und Sie nicht aufrufen sollten. Sie sollten die Ausnahme nicht behandelt. Stattdessen, was Sie tun müssen, hängt die Ursache der Ausnahme:, ob eine Implementierung vollständig nicht vorhanden ist, oder der Aufruf ist inkonsistent, um ein Objekt zu (z. B. einen Aufruf an die FileStream.Read Methode auf eine schreibgeschützte FileStream Objekt.

Eine Implementierung wurde nicht angegeben, da der Vorgang auf sinnvolle Weise ausgeführt werden kann.

Dies ist eine allgemeine Ausnahme, wenn Sie Methoden für ein Objekt aufrufen, die Implementierungen für die Methoden von einer abstrakten Klasse oder dieser implementiert eine allgemeine Schnittstelle bereitstellt, und die Methode keine sinnvollen Implementierung hat.

Zum Beispiel die Convert -Klasse implementiert die IConvertible Schnittstelle, was bedeutet, dass es eine Methode zum Konvertieren von jeder primitiven Typs in allen anderen primitiven Typen enthalten muss. Viele der Konvertierungen, sind jedoch nicht möglich. Als Ergebnis einen Aufruf der Convert.ToBoolean(DateTime) -Methode, löst eine NotSupportedException Ausnahme da gibt es keine mögliche Konvertierung zwischen eine DateTime und ein Boolean Wert

Um die Ausnahme zu vermeiden, sollten Sie den Methodenaufruf vermeiden.

Der Methodenaufruf wird nicht unterstützt, erhält den Status des Objekts.

Sie versuchen, einen Member aufzurufen, dessen Funktionalität aufgrund des Status des Objekts nicht verfügbar ist. Sie können die Ausnahme in eine von drei Arten vermeiden:

  • Der Zustand des Objekts im Voraus wissen, aber Sie haben eine nicht unterstützte Methode oder Eigenschaft aufgerufen. In diesem Fall der Aufruf ist ein Fehler aufgetreten, und Sie beseitigen können.

  • Sie den Zustand des Objekts im Voraus wissen (normalerweise, weil Ihr Code es instanziiert wurde), aber das Objekt ist nicht korrekt konfiguriert. Das folgende Beispiel veranschaulicht dieses Problem. Erstellt eine schreibgeschützte FileStream -Objekt und dann versuchen, darauf zu schreiben.

    Derzeit ist kein Code Beispiel verfügbar, oder die Sprache wird nicht unterstützt.

    Sie können die Ausnahme Leuchten ausschließen, die instanziierten Objekts Funktionen unterstützt werden sollen. Im folgende Beispiel behebt das Problem der schreibgeschützten FileStream Objekt, indem Sie die richtigen Argumente an die FileStream.FileStream(String, FileMode, FileAccess) Konstruktor.

  • Der Status des Objekts nicht im Voraus kennen, und das Objekt unterstützt keinen bestimmten Vorgang. In den meisten Fällen sollte das Objekt enthalten, eine Eigenschaft oder Methode, die angibt, ob es sich um einen bestimmten Satz von Operationen unterstützt. Sie können die Ausnahme vermeiden, indem Sie den Wert des Objekts und Aufrufen des Members nur bei Bedarf.

    Das folgende Beispiel definiert eine DetectEncoding Methode, auslöst, eine NotSupportedException -Ausnahme aus, wenn versucht wird, beginnend mit einem Stream zu lesen, die Lesezugriff nicht unterstützt.

    Derzeit ist kein Code Beispiel verfügbar, oder die Sprache wird nicht unterstützt.

    Sie können die Ausnahme eliminieren, indem Sie den Wert der die FileStream.CanRead -Eigenschaft, und beenden die Methode aus, wenn der Stream schreibgeschützt ist.

    Derzeit ist kein Code Beispiel verfügbar, oder die Sprache wird nicht unterstützt.

Die NotSupportedException Ausnahme ist eng mit zwei anderen Ausnahmetypen;

NotImplementedException.

Diese Ausnahme wird ausgelöst, wenn eine Methode implementiert werden kann, aber nicht, weil das Element wird in einer späteren Version implementiert werden, das Element ist nicht verfügbar auf einer bestimmten Plattform oder das Element gehört zu einer abstrakten Klasse und eine abgeleitete Klasse eine Implementierung bereitstellen muss.

InvalidOperationException

Diese Ausnahme wird in Szenarien, in denen es im Allgemeinen manchmal möglich, dass das Objekt, das den angeforderten Vorgang auszuführen ist, und der Objektzustand bestimmt, ob der Vorgang ausgeführt werden kann.

Wenn Sie mit .NET Compact Framework arbeiten und in einer systemeigenen Funktion P/Invoke verwenden, können folgende Bedingungen zum Auslösen der Ausnahme führen:

  • Die Deklaration im verwalteten Code ist nicht korrekt.

  • Ihre Aktion wird nicht von .NET Compact Framework unterstützt.

  • Die DLL-Namen werden beim Export geändert.

Wenn eine NotSupportedException Ausnahme ausgelöst wird, überprüfen:

  • Ob Verstöße gegen die P/Invoke-Beschränkungen von .NET Compact Framework vorliegen.

  • Ob Argumente vorhanden sind, die im Voraus belegten Arbeitsspeicher erfordern. Falls sie vorhanden sind, sollten Sie einen Verweis auf eine vorhandene Variable übergeben.

  • Ob die Namen der exportierten Funktionen korrekt sind. Dies kann überprüft werden, mit DumpBin.exe.

  • Ob Sie zu viele Argumente zu übergeben versuchen.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.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: