Contract.ContractFailed Zdarzenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Występuje, gdy kontrakt kończy się niepowodzeniem.
public:
static event EventHandler<System::Diagnostics::Contracts::ContractFailedEventArgs ^> ^ ContractFailed;
public static event EventHandler<System.Diagnostics.Contracts.ContractFailedEventArgs> ContractFailed;
public static event EventHandler<System.Diagnostics.Contracts.ContractFailedEventArgs>? ContractFailed;
[add: System.Security.SecurityCritical]
[remove: System.Security.SecurityCritical]
public static event EventHandler<System.Diagnostics.Contracts.ContractFailedEventArgs> ContractFailed;
member this.ContractFailed : EventHandler<System.Diagnostics.Contracts.ContractFailedEventArgs>
[<add: System.Security.SecurityCritical>]
[<remove: System.Security.SecurityCritical>]
member this.ContractFailed : EventHandler<System.Diagnostics.Contracts.ContractFailedEventArgs>
Public Shared Custom Event ContractFailed As EventHandler(Of ContractFailedEventArgs)
Typ zdarzenia
- Atrybuty
Uwagi
Informacje o zdarzeniu są dostarczane przez System.Diagnostics.Contracts.ContractFailedEventArgs obiekt przekazywany do programu obsługi zdarzeń. To zdarzenie powiadamia zarządzane środowisko aplikacji, takie jak interpreter interaktywny lub host przeglądarki sieci Web, że kontrakt zakończył się niepowodzeniem. Zanim to zrobisz, zgłosi zdarzenie, które aplikacja może obsłużyć w miarę jej dopasowania. Jeśli na przykład kod jest uruchamiany w strukturze testowania, możesz zarejestrować błąd testu, a następnie zakończyć test.
Domyślną implementacją RaiseContractFailedEvent metody w bibliotece klas .NET Framework jest wywołanie każdej procedury obsługi zarejestrowanej w zdarzeniuContractFailed. Wyjątki zgłaszane przez programy obsługi są ignorowane, ale każda procedura obsługi może wskazywać, czy awaria jest obsługiwana przez wywołanie SetHandled metody argumentów zdarzeń. Jeśli jakikolwiek program obsługi ustawia błąd jako obsługiwany, metoda zwraca null
i nie zostanie podjęta żadna dalsza akcja. Alternatywnie programy obsługi mogą wywołać metodę SetUnwind , aby poinstruować kod, aby cofnąć się. W takim przypadku zgłaszany jest wyjątek po wykonaniu wszystkich procedur obsługi.