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

Definição

Representa valores como eram no início de um método ou propriedade.

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

O tipo do valor.

Parâmetros

value
T

O valor a ser representado (campo ou parâmetro).

Retornos

T

O valor do parâmetro ou campo no início de um método ou propriedade.

Exemplos

O exemplo a seguir mostra o uso do OldValue método para garantir que uma contagem tenha sido atualizada. Este exemplo de código faz parte de um exemplo maior fornecido para a 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

Comentários

Esse método só pode ser usado na expressão condicional do Ensures contrato.

Aplica-se a