NotImplementedException Třída

Definice

Výjimka, která se vyvolá, když není implementována požadovaná metoda nebo operace.

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
Dědičnost
NotImplementedException
Dědičnost
NotImplementedException
Atributy

Příklady

Následující příklad vyvolá tuto výjimku pro metodu, která nebyla vyvinuta.

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

Poznámky

Výjimka NotImplementedException se vyvolá, pokud je konkrétní metoda, get accessor nebo set accessor přítomna jako člen typu, ale není implementována.

NotImplementedException používá výchozí Object.Equals implementaci, která podporuje rovnost odkazů. Seznampočátečních NotImplementedExceptionNotImplementedException

Vyvolání výjimky

Výjimku ve vlastnostech nebo metodách můžete vyvolat NotImplementedException ve svých vlastních typech, pokud je tento člen stále ve vývoji a bude implementován pouze později v produkčním kódu. Jinými slovy, NotImplementedException výjimka by měla být synonymem "stále ve vývoji".

Zpracování výjimky

Výjimka NotImplementedException značí, že metoda nebo vlastnost, kterou se pokoušíte vyvolat, nemá žádnou implementaci, a proto neposkytuje žádné funkce. V důsledku toho byste tuto chybu neměli zpracovat v try/catch bloku. Místo toho byste měli z kódu odebrat vyvolání člena. Volání člena můžete zahrnout při jeho implementaci v produkční verzi knihovny.

V některých případech NotImplementedException se výjimka nemusí použít k označení funkcí, které jsou stále ve vývoji v předprodukční knihovně. To ale stále znamená, že funkce není dostupná a měli byste z kódu odebrat volání člena.

NotImplementedException a další typy výjimek

.NET Framework obsahuje také dva další typy výjimek a PlatformNotSupportedExceptionoznačující, NotSupportedException že pro konkrétního člena typu neexistuje žádná implementace. Jednu z těchto možností byste měli vyvolat místo NotImplementedException výjimky za následujících podmínek.

PlatformNotSupportedException Výjimka
Pokud jste navrhli typ s jedním nebo více členy, které jsou k dispozici na některých platformách nebo v některých verzích, ale ne v jiných verzích, můžete tuto výjimku vyvolat na platformách, na kterých se funkce nepodporuje.

NotSupportedException Výjimka
Vyvolá výjimku NotSupportedException , pokud implementace člen rozhraní nebo přepsání abstraktní základní třídy metody není možné. Metoda například vyvolá NotSupportedException výjimku, Convert.ToInt32(DateTime) protože neexistuje smysluplný převod mezi datem a časem a 32bitovým celé číslo se znaménkem. V tomto případě musí být k dispozici metoda, protože Convert třída implementuje IConvertible rozhraní.

Výjimku byste měli vyvolat NotSupportedException také v případě, že jste implementovali abstraktní základní třídu a přidali do ní nový člen, který musí být přepsán odvozenými třídami. V takovém případě, aby člen abstraktní způsobí selhání načtení existujících podtříd.

Konstruktory

NotImplementedException()

Inicializuje novou instanci NotImplementedException třídy s výchozími vlastnostmi.

NotImplementedException(SerializationInfo, StreamingContext)

Inicializuje novou instanci třídy NotImplementedException se serializovanými daty.

NotImplementedException(String)

Inicializuje novou instanci NotImplementedException třídy se zadanou chybovou zprávou.

NotImplementedException(String, Exception)

Inicializuje novou instanci NotImplementedException třídy se zadanou chybovou zprávou a odkazem na vnitřní výjimku, která je příčinou této výjimky.

Vlastnosti

Data

Získá kolekci párů klíč/hodnota, které poskytují další uživatelem definované informace o výjimce.

(Zděděno od Exception)
HelpLink

Získá nebo nastaví odkaz na soubor nápovědy přidružené k této výjimce.

(Zděděno od Exception)
HResult

Získá nebo nastaví HRESULT, kódovanou číselnou hodnotu, která je přiřazena ke konkrétní výjimce.

(Zděděno od Exception)
InnerException

Exception Získá instanci, která způsobila aktuální výjimku.

(Zděděno od Exception)
Message

Získá zprávu, která popisuje aktuální výjimku.

(Zděděno od Exception)
Source

Získá nebo nastaví název aplikace nebo objektu, který způsobuje chybu.

(Zděděno od Exception)
StackTrace

Získá řetězcovou reprezentaci okamžitých rámců v zásobníku volání.

(Zděděno od Exception)
TargetSite

Získá metodu, která vyvolá aktuální výjimku.

(Zděděno od Exception)

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetBaseException()

Při přepsání v odvozené třídě vrátí Exception tuto původní příčinu jedné nebo více následných výjimek.

(Zděděno od Exception)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetObjectData(SerializationInfo, StreamingContext)

Při přepsání v odvozené třídě nastaví SerializationInfo s informacemi o výjimce.

(Zděděno od Exception)
GetType()

Získá typ modulu runtime aktuální instance.

(Zděděno od Exception)
MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
ToString()

Vytvoří a vrátí řetězcovou reprezentaci aktuální výjimky.

(Zděděno od Exception)

událost

SerializeObjectState
Zastaralé.

Nastane, když je výjimka serializována k vytvoření objektu stavu výjimky, který obsahuje serializovaná data o výjimce.

(Zděděno od Exception)

Platí pro

Viz také