ContractOptionAttribute Třída
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í.
Umožňuje nastavit kontrakt a možnosti nástrojů na úrovni sestavení, typu nebo členitosti metody.
public ref class ContractOptionAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=true, Inherited=false)]
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public sealed class ContractOptionAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=true, Inherited=false)>]
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
type ContractOptionAttribute = class
inherit Attribute
Public NotInheritable Class ContractOptionAttribute
Inherits Attribute
- Dědičnost
- Atributy
Poznámky
V následující tabulce jsou uvedeny aktuálně podporované možnosti.
Kategorie | Nastavení | Hodnota/efekt |
---|---|---|
Smlouvy | dědičnost | true zapnout dědičnost smluv; false a vypněte ho. Výchozí formát je true . |
modul runtime | kontrola | true zapnout kontrolu doby běhu; false a vypněte ho. Výchozí formát je true . |
Tento atribut můžete použít, jak je znázorněno v následujících příkladech.
Vypnutí kontroly za běhu pro celé sestavení:
[assembly:ContractOption("runtime", "checking", false)]
Zapnutí kontroly kontraktů za běhu pro konkrétní typ:
[ContractOption("runtime", "checking", true)]
class TypeWithRuntimeChecking {
...
Vypnutí kontroly za běhu pro konkrétní metodu:
// Turn off all contract inheritance from interface IList<T>
[ContractOption("contract", "inheritance", false)]
class MyConcurrentList<T> : IList<T> {
...
}
[ContractOption("runtime", "checking", false)]
public override MyMethod(int x) {
// no inherited contracts checked at runtime,
// no invariants checked at runtime.
...
}
[ContractOption("runtime", "checking", false)]
public void MethodWithoutRuntimeChecking(...) {
...
}
}
Konstruktory
ContractOptionAttribute(String, String, Boolean) |
Inicializuje novou instanci ContractOptionAttribute třídy pomocí zadané kategorie, nastavení a hodnoty enable/disable. |
ContractOptionAttribute(String, String, String) |
Inicializuje novou instanci ContractOptionAttribute třídy pomocí zadané kategorie, nastavení a hodnoty. |
Vlastnosti
Category |
Získá kategorii možnosti. |
Enabled |
Určuje, jestli je povolená možnost. |
Setting |
Získá nastavení pro možnost . |
TypeId |
Při implementaci v odvozené třídě získá jedinečný identifikátor pro tuto Attributetřídu . (Zděděno od Attribute) |
Value |
Získá hodnotu pro možnost. |
Metody
Equals(Object) |
Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu. (Zděděno od Attribute) |
GetHashCode() |
Vrátí hodnotu hash pro tuto instanci. (Zděděno od Attribute) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
IsDefaultAttribute() |
Při přepsání v odvozené třídě označuje, zda je hodnota této instance výchozí hodnotou pro odvozenou třídu. (Zděděno od Attribute) |
Match(Object) |
Při přepsání v odvozené třídě vrátí hodnotu, která označuje, zda se tato instance rovná zadanému objektu. (Zděděno od Attribute) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání. (Zděděno od Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Načte informace o typu objektu, které lze použít k získání informací o typu pro rozhraní. (Zděděno od Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1). (Zděděno od Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. (Zděděno od Attribute) |