Contract.Ensures Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie un contrat de post-condition pour la méthode englobante ou la propriété.
Surcharges
Ensures(Boolean) |
Spécifie un contrat de post-condition pour la méthode englobante ou la propriété. |
Ensures(Boolean, String) |
Spécifie un contrat de post-condition pour une condition de sortie fournie et un message à afficher si la condition est |
Ensures(Boolean)
- Source:
- Contracts.cs
- Source:
- Contracts.cs
- Source:
- Contracts.cs
Spécifie un contrat de post-condition pour la méthode englobante ou la propriété.
public:
static void Ensures(bool condition);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool -> unit
Public Shared Sub Ensures (condition As Boolean)
Paramètres
- condition
- Boolean
Expression conditionnelle à tester. L'expression peut inclure des valeurs OldValue<T>(T), ValueAtReturn<T>(T) et Result<T>().
- Attributs
Exemples
L’exemple suivant montre comment utiliser la Ensures méthode pour s’assurer qu’une valeur attendue est retournée. Cet exemple de code fait partie d’un exemple plus grand fourni pour la ContractClassAttribute classe .
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);
}
Function Add(ByVal value As Object) As Integer Implements IArray.Add
' Returns the index in which an item was inserted.
Contract.Ensures(Contract.Result(Of Integer)() >= -1) '
Contract.Ensures(Contract.Result(Of Integer)() < CType(Me, IArray).Count) '
Return 0
End Function 'IArray.Add
Remarques
Le condition
paramètre spécifie une postcondition qui est censée être true
lorsque la méthode ou la propriété englobante retourne normalement.
Cet appel de méthode doit se trouver au début d’une méthode ou d’une propriété, avant tout autre code.
Vous devez utiliser la réécriture binaire (disponible dans Contrats de code sur la Place de marché Visual Studio) pour l’application de cette postcondition au moment de l’exécution.
S’applique à
Ensures(Boolean, String)
- Source:
- Contracts.cs
- Source:
- Contracts.cs
- Source:
- Contracts.cs
Spécifie un contrat de post-condition pour une condition de sortie fournie et un message à afficher si la condition est false
.
public:
static void Ensures(bool condition, System::String ^ userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition, string userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition, string? userMessage);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool * string -> unit
Public Shared Sub Ensures (condition As Boolean, userMessage As String)
Paramètres
- condition
- Boolean
Expression conditionnelle à tester. L'expression peut inclure des valeurs OldValue<T>(T) et Result<T>().
- userMessage
- String
Message à afficher si l'expression n'est pas true
.
- Attributs
Remarques
Le condition
paramètre spécifie une postcondition qui est censée être true
lorsque la méthode ou la propriété englobante retourne normalement.
Cet appel de méthode doit se trouver au début d’une méthode ou d’une propriété, avant tout autre code.
Ce contrat est exposé aux clients ; par conséquent, il doit uniquement référencer les membres qui sont au moins aussi visibles que la méthode englobante.
Vous devez utiliser la réécriture binaire (disponible dans Contrats de code sur la Place de marché Visual Studio) pour l’application de cette postcondition au moment de l’exécution.
Si
userMessage
n’est pas un littéral de chaîne constante, le contrat peut ne pas être compris par les outils.