Contract.EnsuresOnThrow Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Specifies a postcondition contract for the enclosing method or property based on the provided exception and condition.
Overloads
EnsuresOnThrow<TException>(Boolean) |
Specifies a postcondition contract for the enclosing method or property, based on the provided exception and condition. |
EnsuresOnThrow<TException>(Boolean, String) |
Specifies a postcondition contract and a message to display if the condition is |
EnsuresOnThrow<TException>(Boolean)
- Source:
- Contracts.cs
- Source:
- Contracts.cs
- Source:
- Contracts.cs
Specifies a postcondition contract for the enclosing method or property, based on the provided exception and condition.
public:
generic <typename TException>
where TException : Exception static void EnsuresOnThrow(bool condition);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void EnsuresOnThrow<TException> (bool condition) where TException : Exception;
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member EnsuresOnThrow : bool -> unit (requires 'Exception :> Exception)
Public Shared Sub EnsuresOnThrow(Of TException As Exception) (condition As Boolean)
Type Parameters
- TException
The type of exception that invokes the postcondition check.
Parameters
- condition
- Boolean
The conditional expression to test.
- Attributes
Remarks
The condition
parameter specifies a postcondition that is expected to be true
when the enclosing method or property terminates abnormally and an exception of type TException
is thrown.
This method call must be at the beginning of a method or property, before any other code.
This contract is exposed to clients; therefore, it must only reference members that are at least as visible as the enclosing method.
You must use the binary rewriter for run-time enforcement of this postcondition.
Applies to
EnsuresOnThrow<TException>(Boolean, String)
- Source:
- Contracts.cs
- Source:
- Contracts.cs
- Source:
- Contracts.cs
Specifies a postcondition contract and a message to display if the condition is false
for the enclosing method or property, based on the provided exception and condition.
public:
generic <typename TException>
where TException : Exception static void EnsuresOnThrow(bool condition, System::String ^ userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void EnsuresOnThrow<TException> (bool condition, string userMessage) where TException : Exception;
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void EnsuresOnThrow<TException> (bool condition, string? userMessage) where TException : Exception;
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member EnsuresOnThrow : bool * string -> unit (requires 'Exception :> Exception)
Public Shared Sub EnsuresOnThrow(Of TException As Exception) (condition As Boolean, userMessage As String)
Type Parameters
- TException
The type of exception that invokes the postcondition check.
Parameters
- condition
- Boolean
The conditional expression to test.
- userMessage
- String
The message to display if the expression is false
.
- Attributes
Remarks
The condition
parameter specifies a postcondition that is expected to be true
when the enclosing method or property terminates abnormally and an exception of type TException
is thrown. The message
parameter specifies a message to display if the condition is false
.
This method call must be at the beginning of a method or property, before any other code.
This contract is exposed to clients; therefore, it must only reference members that are at least as visible as the enclosing method.
You must use the binary rewriter for run-time enforcement of this postcondition.
If
userMessage
is not a constant string literal, the contract may not be understood by tools.