Condividi tramite


Contract.OldValue<T>(T) Metodo

Definizione

Rappresenta i valori come se fossero all'inizio di un metodo o di una proprietà.

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

Parametri di tipo

T

Tipo di valore.

Parametri

value
T

Valore da rappresentare (campo o parametro).

Restituisce

T

Valore del parametro o del campo all'inizio di un metodo o di una proprietà.

Esempio

Nell'esempio seguente viene illustrato l'uso del OldValue metodo per assicurarsi che un conteggio sia stato aggiornato. Questo esempio di codice fa parte di un esempio più ampio fornito per 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

Commenti

Questo metodo può essere usato solo nell'espressione condizionale per il Ensures contratto.

Si applica a