Contract.Ensures Method (Boolean)

Specifies a postcondition contract for the enclosing method or property.

Namespace:  System.Diagnostics.Contracts
Assembly:  mscorlib (in mscorlib.dll)

[ConditionalAttribute("CONTRACTS_FULL")]
public static void Ensures(
	bool condition
)

Parameters

condition
Type: System.Boolean
The conditional expression to test. The expression may include OldValue<T>, ValueAtReturn<T>, and Result<T> values.

The condition parameter specifies a postcondition that is expected to be true when the enclosing method or property returns normally.

  • This method call must be at the beginning of a method or property, before any other code.

  • You must use the binary rewriter (available at Code Contracts on the MSDN DevLabs Web site) for run-time enforcement of this postcondition.

The following example shows how to use the Ensures method to ensure that an expected value is returned. This code example is part of a larger example provided for the ContractClassAttribute class.


int IArray.Add(Object value)
{
    // Returns the index in which an item was inserted.
    Contract.Ensures(Contract.Result<int>() >= -1);
    Contract.Ensures(Contract.Result<int>() < ((IArray)this).Count);
    return default(int);
}


Silverlight

Supported in: 5, 4

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions

ADD
Show: