NotImplementedException Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Die Ausnahme, die ausgelöst wird, wenn eine angeforderte Methode oder Operation nicht implementiert ist.
public ref class NotImplementedException : Exception
public ref class NotImplementedException : SystemException
public class NotImplementedException : Exception
public class NotImplementedException : SystemException
[System.Serializable]
public class NotImplementedException : SystemException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class NotImplementedException : SystemException
type NotImplementedException = class
inherit Exception
type NotImplementedException = class
inherit SystemException
[<System.Serializable>]
type NotImplementedException = class
inherit SystemException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type NotImplementedException = class
inherit SystemException
Public Class NotImplementedException
Inherits Exception
Public Class NotImplementedException
Inherits SystemException
- Vererbung
- Vererbung
- Attribute
Beispiele
Im folgenden Beispiel wird diese Ausnahme für eine Methode ausgelöst, die nicht entwickelt wurde.
static void Main(string[] args)
{
try
{
FutureFeature();
}
catch (NotImplementedException notImp)
{
Console.WriteLine(notImp.Message);
}
}
static void FutureFeature()
{
// Not developed yet.
throw new NotImplementedException();
}
open System
let futureFeature () =
// Not developed yet.
raise (NotImplementedException())
[<EntryPoint>]
let main _ =
try
futureFeature ()
with :? NotImplementedException as notImp ->
printfn $"{notImp.Message}"
0
Sub Main()
Try
FutureFeature()
Catch NotImp As NotImplementedException
Console.WriteLine(NotImp.Message)
End Try
End Sub
Sub FutureFeature()
' not developed yet.
Throw New NotImplementedException()
End Sub
Hinweise
Die NotImplementedException Ausnahme wird ausgelöst, wenn eine bestimmte Methode, ein Accessor abrufen oder ein Set-Accessor als Element eines Typs vorhanden ist, aber nicht implementiert wird.
NotImplementedException verwendet die Standardimplementierung Object.Equals , die die Referenzgleichheit unterstützt. Eine Liste der anfänglichen Werte für eine Instanz von NotImplementedException, finden Sie in den NotImplementedException Konstruktoren.
Auslösen der Ausnahme
Möglicherweise können Sie eine NotImplementedException Ausnahme in Eigenschaften oder Methoden in Ihren eigenen Typen auslösen, wenn das Element noch in der Entwicklung ist und nur später im Produktionscode implementiert wird. Mit anderen Worten, eine NotImplementedException Ausnahme sollte synonym mit "immer noch in der Entwicklung" sein.
Behandeln der Ausnahme
Die NotImplementedException Ausnahme gibt an, dass die Methode oder Eigenschaft, die Sie aufrufen möchten, keine Implementierung aufweist und daher keine Funktionalität bereitstellt. Daher sollten Sie diesen Fehler in einem try/catch
Block nicht behandeln. Stattdessen sollten Sie den Aufruf des Members aus Ihrem Code entfernen. Sie können einen Aufruf an das Mitglied einschließen, wenn sie in der Produktionsversion einer Bibliothek implementiert wird.
In einigen Fällen kann eine NotImplementedException Ausnahme nicht verwendet werden, um Funktionen anzugeben, die sich noch in einer Vorabproduktionsbibliothek befinden. Dies gibt jedoch weiterhin an, dass die Funktionalität nicht verfügbar ist, und Sie sollten den Memberaufruf aus Ihrem Code entfernen.
NotImplementedException und andere Ausnahmetypen
Die .NET Framework enthält auch zwei andere Ausnahmetypen und NotSupportedException PlatformNotSupportedExceptiongibt an, dass für ein bestimmtes Element eines Typs keine Implementierung vorhanden ist. Sie sollten eine der folgenden Bedingungen anstelle einer NotImplementedException Ausnahme auslösen.
PlatformNotSupportedException Ausnahme
Wenn Sie einen Typ mit einem oder mehreren Mitgliedern entwickelt haben, die auf einigen Plattformen oder in einigen Versionen, aber nicht in anderen Versionen verfügbar sind, können Sie diese Ausnahme auf Plattformen auslösen, auf denen die Funktionalität nicht unterstützt wird.
NotSupportedException Ausnahme
Löst eine NotSupportedException Ausnahme aus, wenn die Implementierung eines Schnittstellenmitglieds oder eine Außerkraftsetzung auf eine abstrakte Basisklassenmethode nicht möglich ist. Die Methode löst beispielsweise eine NotSupportedException Ausnahme aus, Convert.ToInt32(DateTime) da keine aussagekräftige Konvertierung zwischen einem Datum und einer Uhrzeit und einer 32-Bit-Ganzzahl vorhanden ist. Die Methode muss in diesem Fall vorhanden sein, da die Convert Klasse die IConvertible Schnittstelle implementiert.
Sie sollten auch eine Ausnahme auslösen, wenn Sie eine NotSupportedException abstrakte Basisklasse implementiert haben und einem neuen Element hinzufügen, das von abgeleiteten Klassen außer Kraft gesetzt werden muss. In diesem Fall führt das Abstrahieren des Members dazu, dass vorhandene Unterklassen nicht geladen werden.
Konstruktoren
NotImplementedException() |
Initialisiert eine neue Instanz der NotImplementedException-Klasse mit Standardeigenschaften. |
NotImplementedException(SerializationInfo, StreamingContext) |
Initialisiert eine neue Instanz der NotImplementedException-Klasse mit serialisierten Daten. |
NotImplementedException(String) |
Initialisiert eine neue Instanz der NotImplementedException-Klasse mit einer angegebenen Fehlermeldung. |
NotImplementedException(String, Exception) |
Initialisiert eine neue Instanz der NotImplementedException-Klasse mit einer angegebenen Fehlermeldung und einem Verweis auf die innere Ausnahme, die diese Ausnahme ausgelöst hat. |
Eigenschaften
Data |
Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen zur Ausnahme bereitstellen. (Geerbt von Exception) |
HelpLink |
Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest. (Geerbt von Exception) |
HResult |
Ruft HRESULT ab oder legt HRESULT fest. Dies ist ein codierter Wert, der einer bestimmten Ausnahme zugeordnet ist. (Geerbt von Exception) |
InnerException |
Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursacht hat. (Geerbt von Exception) |
Message |
Ruft eine Meldung ab, mit der die aktuelle Ausnahme beschrieben wird. (Geerbt von Exception) |
Source |
Gibt den Namen der Anwendung oder des Objekts zurück, die bzw. das den Fehler verursacht hat, oder legt diesen fest. (Geerbt von Exception) |
StackTrace |
Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab. (Geerbt von Exception) |
TargetSite |
Ruft die Methode ab, die die aktuelle Ausnahme auslöst. (Geerbt von Exception) |
Methoden
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetBaseException() |
Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die Grundursache für eine oder mehrere nachfolgende Ausnahmen ist. (Geerbt von Exception) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Legt beim Überschreiben in einer abgeleiteten Klasse die SerializationInfo mit Informationen über die Ausnahme fest. (Geerbt von Exception) |
GetType() |
Ruft den Laufzeittyp der aktuellen Instanz ab. (Geerbt von Exception) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Erstellt eine Zeichenfolgendarstellung der aktuellen Ausnahme und gibt diese zurück. (Geerbt von Exception) |
Ereignisse
SerializeObjectState |
Veraltet.
Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt mit serialisierten Daten über die Ausnahme zu erstellen. (Geerbt von Exception) |