Contract.OldValue<T>(T) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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
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.