Contract Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Bevat statische methoden voor het weergeven van programmacontracten, zoals voorwaarden, postconditions en object-invarianten.
public ref class Contract abstract sealed
public static class Contract
type Contract = class
Public Class Contract
- Overname
-
Contract
Opmerkingen
Met codecontractklassen kunt u voorwaarden, postconditions en object-invarianten in uw code opgeven. Voorwaarden zijn vereisten waaraan moet worden voldaan bij het invoeren van een methode of eigenschap. Postconditions beschrijven verwachtingen op het moment dat de methode of eigenschapscode wordt afgesloten. Objectinvarianten beschrijven de verwachte status voor een klasse zonder problemen. Zie Codecontracten voor meer informatie over voorwaarden, postconditions en object-invarianten.
Zie Code Contracts op de Visual Studio Marketplace voor hulpprogramma's en gedetailleerde instructies voor het gebruik van codecontracten.
Belangrijk
U moet een binaire herschrijver gebruiken om runtime afdwinging van contracten in te voegen. Anders kunnen contracten zoals de Contract.Ensures methode alleen statisch worden getest en worden er tijdens de runtime geen uitzonderingen gegenereerd als een contract wordt geschonden. U kunt de binaire herschrijfmachine CCRewrite downloaden van Code Contracts op de Visual Studio Marketplace. CCRewrite wordt geleverd met een Visual Studio-invoegtoepassing waarmee u het afdwingen van runtime-contracten kunt activeren vanaf de pagina project Properties. De binaire rewriter en de Visual Studio-invoegtoepassing worden niet verzonden met Visual Studio 2010 of de Windows SDK.
Methoden
| Name | Description |
|---|---|
| Assert(Boolean, String) |
Controleert op een voorwaarde; als de voorwaarde is |
| Assert(Boolean) |
Controleert op een voorwaarde; als de voorwaarde is |
| Assume(Boolean, String) |
Instrueert codeanalysehulpprogramma's om aan te nemen dat een voorwaarde is |
| Assume(Boolean) |
Instrueert codeanalysehulpprogramma's om ervan uit te gaan dat de opgegeven voorwaarde is |
| EndContractBlock() |
Markeert het einde van de contractsectie wanneer de contracten van een methode alleen voorwaarden in de |
| Ensures(Boolean, String) |
Hiermee geeft u een contract nacondition voor een opgegeven afsluitvoorwaarde en een bericht weer te geven als de voorwaarde is |
| Ensures(Boolean) |
Hiermee geeft u een postcondition contract voor de insluitmethode of eigenschap. |
| EnsuresOnThrow<TException>(Boolean, String) |
Hiermee geeft u een contract nacondition en een bericht weer te geven als de voorwaarde voor de insluitmethode of eigenschap is |
| EnsuresOnThrow<TException>(Boolean) |
Hiermee geeft u een postcondition contract voor de omsluitmethode of eigenschap, op basis van de opgegeven uitzondering en voorwaarde. |
| Exists(Int32, Int32, Predicate<Int32>) |
Bepaalt of een opgegeven test waar is voor een geheel getal binnen een bereik van gehele getallen. |
| Exists<T>(IEnumerable<T>, Predicate<T>) |
Bepaalt of een element binnen een verzameling elementen binnen een functie bestaat. |
| ForAll(Int32, Int32, Predicate<Int32>) |
Bepaalt of een bepaalde voorwaarde geldig is voor alle gehele getallen in een opgegeven bereik. |
| ForAll<T>(IEnumerable<T>, Predicate<T>) |
Bepaalt of alle elementen in een verzameling bestaan binnen een functie. |
| Invariant(Boolean, String) |
Hiermee geeft u een invariant contract voor de insluitmethode of eigenschap en geeft u een bericht weer als de voorwaarde voor het contract mislukt. |
| Invariant(Boolean) |
Hiermee geeft u een invariant contract voor de insluitmethode of eigenschap. |
| OldValue<T>(T) |
Vertegenwoordigt waarden zoals ze aan het begin van een methode of eigenschap waren. |
| Requires(Boolean, String) |
Hiermee geeft u een voorwaardecontract voor de omsluitmethode of eigenschap en geeft u een bericht weer als de voorwaarde voor het contract mislukt. |
| Requires(Boolean) |
Hiermee geeft u een voorwaardecontract voor de insluitmethode of eigenschap. |
| Requires<TException>(Boolean, String) |
Hiermee geeft u een voorwaardecontract op voor de insluitmethode of eigenschap en genereert u een uitzondering met het opgegeven bericht als de voorwaarde voor het contract mislukt. |
| Requires<TException>(Boolean) |
Hiermee geeft u een voorwaardecontract voor de insluitmethode of eigenschap op en genereert een uitzondering als de voorwaarde voor het contract mislukt. |
| Result<T>() |
Vertegenwoordigt de retourwaarde van een methode of eigenschap. |
| ValueAtReturn<T>(T) |
Vertegenwoordigt de uiteindelijke waarde (uitvoer) van een |
gebeurtenis
| Name | Description |
|---|---|
| ContractFailed |
Treedt op wanneer een contract mislukt. |