Contract.Ensures Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje kontrakt postcondition pro ohraničující metodu nebo vlastnost.
Přetížení
| Name | Description |
|---|---|
| Ensures(Boolean) |
Určuje kontrakt postcondition pro ohraničující metodu nebo vlastnost. |
| Ensures(Boolean, String) |
Určuje smlouvu postcondition pro zadanou výstupní podmínku a zprávu, která se má zobrazit, pokud je |
Ensures(Boolean)
- Zdroj:
- Contracts.cs
- Zdroj:
- Contracts.cs
- Zdroj:
- Contracts.cs
- Zdroj:
- Contracts.cs
- Zdroj:
- Contracts.cs
Určuje kontrakt postcondition pro ohraničující metodu nebo vlastnost.
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
Podmíněný výraz, který se má testovat. Výraz může obsahovat OldValue<T>(T), ValueAtReturn<T>(T)a Result<T>() hodnoty.
- Atributy
Příklady
Následující příklad ukazuje, jak použít metodu Ensures k zajištění, že je vrácena očekávaná hodnota. Tento příklad kódu je součástí většího příkladu uvedeného pro třídu ContractClassAttribute.
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
Poznámky
Parametr condition určuje postcondition, který se očekává true , když ohraničující metoda nebo vlastnost vrátí normálně.
Toto volání metody musí být na začátku metody nebo vlastnosti před jakýmkoli jiným kódem.
Pro vynucení tohoto postconditionu musíte použít binární přepis (dostupný na Code Contracts na Visual Studio Marketplace).
Platí pro
Ensures(Boolean, String)
- Zdroj:
- Contracts.cs
- Zdroj:
- Contracts.cs
- Zdroj:
- Contracts.cs
- Zdroj:
- Contracts.cs
- Zdroj:
- Contracts.cs
Určuje smlouvu postcondition pro zadanou výstupní podmínku a zprávu, která se má zobrazit, pokud je falsepodmínka .
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
Podmíněný výraz, který se má testovat. Výraz může obsahovat OldValue<T>(T) a Result<T>() hodnoty.
- userMessage
- String
Zpráva, která se má zobrazit, pokud výraz není true.
- Atributy
Poznámky
Parametr condition určuje postcondition, který se očekává true , když ohraničující metoda nebo vlastnost vrátí normálně.
Toto volání metody musí být na začátku metody nebo vlastnosti před jakýmkoli jiným kódem.
Tato smlouva je vystavena klientům; proto musí odkazovat pouze na členy, které jsou alespoň tak viditelné jako uzavírací metoda.
Pro vynucení tohoto postconditionu musíte použít binární přepis (dostupný na Code Contracts na Visual Studio Marketplace).
Pokud
userMessagenení konstantní řetězcový literál, nemusí kontrakt rozumět nástrojům.