Contract.Ensures 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.
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 |
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 true
jest .
- 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.