Sdílet prostřednictvím


ContractOptionAttribute Třída

Definice

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
ContractOptionAttribute
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)

Platí pro