Contract.OldValue<T>(T) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar värden som de var i början av en metod eller egenskap.
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
Typparametrar
- T
Typ av värde.
Parametrar
- value
- T
Värdet som ska representeras (fält eller parameter).
Returer
Värdet för parametern eller fältet i början av en metod eller egenskap.
Exempel
I följande exempel visas hur metoden används OldValue för att säkerställa att antalet har uppdaterats. Det här kodexemplet är en del av ett större exempel för ContractClassAttribute klassen.
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
Kommentarer
Den här metoden kan endast användas i villkorsuttrycket för Ensures kontraktet.