ContractOptionAttribute Klasse

Definition

Ermöglicht es Ihnen, Vertrags- und Tool-Optionen in der Assembly, am Typ oder Methodengranularität festzulegen.

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
Vererbung
ContractOptionAttribute
Attribute

Hinweise

In der folgenden Tabelle sind die derzeit unterstützten Optionen aufgeführt.

Category Einstellung Wert/Effekt
contract Vererbung true , um die Vertragsvererbung zu aktivieren; false , um sie zu deaktivieren. Der Standardwert ist true.
Laufzeit Überprüfen true , um die Laufzeitüberprüfung zu aktivieren; false , um sie zu deaktivieren. Der Standardwert ist true.

Sie können dieses Attribut verwenden, wie in den folgenden Beispielen veranschaulicht.

So deaktivieren Sie die Laufzeitüberprüfung für die gesamte Assembly:

[assembly:ContractOption("runtime", "checking", false)]  

So aktivieren Sie die Laufzeitvertragsüberprüfung für einen bestimmten Typ:

[ContractOption("runtime", "checking", true)]  
class TypeWithRuntimeChecking {  

    ...  

So deaktivieren Sie die Laufzeitüberprüfung für eine bestimmte Methode:

// 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(...) {  
          ...  
       }  
   }  

Konstruktoren

ContractOptionAttribute(String, String, Boolean)

Initialisiert eine neue Instanz der ContractOptionAttribute-Klasse unter Verwendung der angegebenen Kategorie, Einstellung und des aktivieren/deaktivieren-Werts.

ContractOptionAttribute(String, String, String)

Initialisiert eine neue Instanz der ContractOptionAttribute-Klasse unter Verwendung der angegebenen Kategorie, Einstellung und des Werts.

Eigenschaften

Category

Ruft die Kategorie der Option ab.

Enabled

Bestimmt, ob eine Option aktiviert ist.

Setting

Ruft die Einstellung für die Option ab.

TypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.

(Geerbt von Attribute)
Value

Ruft den Wert für die Option ab.

Methoden

Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.

(Geerbt von Attribute)
GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

(Geerbt von Attribute)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von Attribute)

Gilt für: