Contract.Ensures Metoda

Definicja

Określa kontrakt postcondition dla otaczającej metody lub właściwości.

Przeciążenia

Ensures(Boolean)

Określa kontrakt postcondition dla otaczającej metody lub właściwości.

Ensures(Boolean, String)

Określa kontrakt postcondition dla podanego warunku zakończenia i komunikat do wyświetlenia, jeśli warunek to false.

Ensures(Boolean)

Źródło:
Contracts.cs
Źródło:
Contracts.cs
Źródło:
Contracts.cs

Określa kontrakt postcondition dla otaczającej metody lub właściwości.

public:
 static void Ensures(bool condition);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool -> unit
Public Shared Sub Ensures (condition As Boolean)

Parametry

condition
Boolean

Wyrażenie warunkowe do przetestowania. Wyrażenie może zawierać OldValue<T>(T)wartości , ValueAtReturn<T>(T)i Result<T>() .

Atrybuty

Przykłady

W poniższym przykładzie pokazano, jak za pomocą Ensures metody upewnić się, że zwracana jest oczekiwana wartość. Ten przykład kodu jest częścią większego przykładu udostępnionego ContractClassAttribute dla klasy .

int IArray.Add(Object value)
{
    // Returns the index in which an item was inserted.
    Contract.Ensures(Contract.Result<int>() >= -1);
    Contract.Ensures(Contract.Result<int>() < ((IArray)this).Count);
    return default(int);
}
Function Add(ByVal value As Object) As Integer Implements IArray.Add
    ' Returns the index in which an item was inserted.
    Contract.Ensures(Contract.Result(Of Integer)() >= -1) '
    Contract.Ensures(Contract.Result(Of Integer)() < CType(Me, IArray).Count) '
    Return 0
    
End Function 'IArray.Add

Uwagi

Parametr condition określa postcondition, który ma być true , gdy otaczającej metody lub właściwości zwraca normalnie.

  • To wywołanie metody musi znajdować się na początku metody lub właściwości przed jakimkolwiek innym kodem.

  • Musisz użyć funkcji ponownej scenarzysty binarnej (dostępnej w sekcji Code Contracts w witrynie Visual Studio Marketplace) w celu wymuszania tego terminu w czasie wykonywania.

Dotyczy

Ensures(Boolean, String)

Źródło:
Contracts.cs
Źródło:
Contracts.cs
Źródło:
Contracts.cs

Określa kontrakt postcondition dla podanego warunku zakończenia i komunikat do wyświetlenia, jeśli warunek to false.

public:
 static void Ensures(bool condition, System::String ^ userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition, string userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition, string? userMessage);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool * string -> unit
Public Shared Sub Ensures (condition As Boolean, userMessage As String)

Parametry

condition
Boolean

Wyrażenie warunkowe do przetestowania. Wyrażenie może zawierać OldValue<T>(T) wartości i Result<T>() .

userMessage
String

Komunikat do wyświetlenia, jeśli wyrażenie nie truejest .

Atrybuty

Uwagi

Parametr condition określa postcondition, który ma być true , gdy otaczającej metody lub właściwości zwraca normalnie.

  • To wywołanie metody musi znajdować się na początku metody lub właściwości przed jakimkolwiek innym kodem.

  • Ten kontrakt jest udostępniany klientom; w związku z tym musi odwoływać się tylko do elementów członkowskich, które są co najmniej tak widoczne jak metoda otaczania.

  • Musisz użyć funkcji ponownej scenarzysty binarnej (dostępnej w sekcji Code Contracts w witrynie Visual Studio Marketplace) w celu wymuszania tego terminu w czasie wykonywania.

  • Jeśli userMessage nie jest literałem ciągu stałego, kontrakt może nie być zrozumiały dla narzędzi.

Dotyczy