Contract.OldValue<T>(T) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje wartości, które znajdowały się na początku metody lub właściwości.
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
Parametry typu
- T
Typ wartości.
Parametry
- value
- T
Wartość do reprezentowania (pole lub parametr).
Zwraca
Wartość parametru lub pola na początku metody lub właściwości.
Przykłady
W poniższym przykładzie pokazano użycie OldValue metody w celu upewnienia się, że liczba została zaktualizowana. Ten przykład kodu jest częścią większego przykładu udostępnionego ContractClassAttribute dla klasy .
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
Uwagi
Tej metody można używać tylko w wyrażeniu warunkowym dla kontraktu Ensures .