Contract.OldValue<T>(T) 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.
Représente les valeurs telles qu'elles étaient au démarrage d'une méthode ou d'une propriété.
public:
generic <typename T>
static T OldValue(T value);
public static T OldValue<T> (T value);
static member OldValue : 'T -> 'T
Public Shared Function OldValue(Of T) (value As T) As T
Paramètres de type
- T
Type de valeur.
Paramètres
- value
- T
Valeur à représenter (champ ou paramètre).
Retours
Valeur du paramètre ou champ au démarrage d'une méthode ou propriété.
Exemples
L’exemple suivant illustre l’utilisation de la OldValue méthode pour s’assurer qu’un nombre a été mis à jour. Cet exemple de code fait partie d’un exemple plus grand fourni pour la ContractClassAttribute classe .
void IArray.Insert(int index, Object value)
{
Contract.Requires(index >= 0);
Contract.Requires(index <= ((IArray)this).Count); // For inserting immediately after the end.
Contract.Ensures(((IArray)this).Count == Contract.OldValue(((IArray)this).Count) + 1);
}
Sub Insert(ByVal index As Integer, ByVal value As [Object]) Implements IArray.Insert
Contract.Requires(index >= 0)
Contract.Requires(index <= CType(Me, IArray).Count) ' For inserting immediately after the end.
Contract.Ensures(CType(Me, IArray).Count = Contract.OldValue(CType(Me, IArray).Count) + 1)
End Sub
Remarques
Cette méthode ne peut être utilisée que dans l’expression conditionnelle pour le Ensures contrat.