Contract.OldValue<T>(T) Método

Definición

Representa los valores como eran al principio de un método o propiedad.

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

Parámetros de tipo

T

Tipo del valor.

Parámetros

value
T

Valor que se va a representar (campo o parámetro).

Devoluciones

T

El valor del parámetro o del campo del inicio de un método o propiedad.

Ejemplos

En el ejemplo siguiente se muestra el uso del OldValue método para asegurarse de que se ha actualizado un recuento. Este ejemplo de código es parte de un ejemplo más grande proporcionado para la clase ContractClassAttribute.

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

Comentarios

Este método solo se puede usar en la expresión condicional para el Ensures contrato.

Se aplica a