Contract.ContractFailed 事件
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
發生於合約失敗時。
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)
事件類型
- 屬性
備註
這個事件的事件資訊是由 System.Diagnostics.Contracts.ContractFailedEventArgs 傳遞至事件處理程序的物件所提供。 此事件會通知受控應用程式環境,例如互動式解釋器或合約失敗的網頁瀏覽器主機。 執行此動作之前,它會引發應用程式可處理的事件,因為它看起來很適合。 例如,如果在測試架構中執行程序代碼,您可以記錄測試失敗,然後結束測試。
.NET Framework 類別庫中方法的預設實RaiseContractFailedEvent作是呼叫向 ContractFailed 事件註冊的每個處理程式。 處理程序擲回的例外狀況會被忽略,但每個處理程式都可以藉由呼叫 SetHandled 事件自變數的方法來指出是否處理失敗。 如果有任何處理程式將失敗設定為已處理,則方法會 null
傳回,而且不會採取任何進一步的動作。 或者,處理程式可以呼叫 SetUnwind 方法來指示程序代碼回溯。 在此情況下,在執行所有處理程序之後,就會擲回例外狀況。