Contract.OldValue<T>(T) Yöntem

Tanım

Bir yöntemin veya özelliğin başında oldukları gibi değerleri temsil eder.

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

Tür Parametreleri

T

Değerin türü.

Parametreler

value
T

Temsil edecek değer (alan veya parametre).

Döndürülenler

T

Bir yöntemin veya özelliğin başındaki parametrenin veya alanın değeri.

Örnekler

Aşağıdaki örnekte, bir sayının OldValue güncelleştirildiğinden emin olmak için yönteminin kullanımı gösterilmektedir. Bu kod örneği, sınıfı için ContractClassAttribute sağlanan daha büyük bir örneğin parçasıdır.

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

Açıklamalar

Bu yöntem yalnızca sözleşmenin koşullu ifadesinde Ensures kullanılabilir.

Şunlara uygulanır