ContractOptionAttribute Sınıf

Tanım

Derleme, tür veya yöntem ayrıntı düzeyinde sözleşme ve araç seçeneklerini ayarlamanıza olanak tanır.

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
Devralma
ContractOptionAttribute
Öznitelikler

Açıklamalar

Aşağıdaki tabloda şu anda desteklenen seçenekler gösterilmektedir.

Kategori Ayar Değer/efekt
Sözleşme devralma true sözleşme devralmayı açmak için; false seçeneğini seçin. Varsayılan değer: true.
çalışma zamanı denetleme true çalışma zamanı denetimini açmak için; false seçeneğini seçin. Varsayılan değer: true.

Aşağıdaki örneklerde gösterildiği gibi bu özniteliği kullanabilirsiniz.

Derlemenin tamamı için çalışma zamanı denetimini kapatmak için:

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

Belirli bir tür için çalışma zamanı sözleşme denetimini açmak için:

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

    ...  

Belirli bir yöntem için çalışma zamanı denetimini kapatmak için:

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

Oluşturucular

ContractOptionAttribute(String, String, Boolean)

Sağlanan kategoriyi, ayarı ve etkinleştirme/devre dışı bırakma değerini kullanarak sınıfının yeni bir örneğini ContractOptionAttribute başlatır.

ContractOptionAttribute(String, String, String)

Sağlanan kategoriyi, ayarı ve değeri kullanarak sınıfının yeni bir örneğini ContractOptionAttribute başlatır.

Özellikler

Category

Seçeneğin kategorisini alır.

Enabled

Bir seçeneğin etkinleştirilip etkinleştirilmediğini belirler.

Setting

Seçeneğin ayarını alır.

TypeId

Türetilmiş bir sınıfta uygulandığında, bu Attributeiçin benzersiz bir tanımlayıcı alır.

(Devralındığı yer: Attribute)
Value

Seçeneğin değerini alır.

Yöntemler

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür.

(Devralındığı yer: Attribute)
GetHashCode()

Bu örneğe ilişkin karma kodu döndürür.

(Devralındığı yer: Attribute)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IsDefaultAttribute()

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin değerinin türetilmiş sınıf için varsayılan değer olup olmadığını gösterir.

(Devralındığı yer: Attribute)
Match(Object)

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

(Devralındığı yer: Attribute)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

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

Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Bir arabirimin tür bilgilerini almak için kullanılabilecek bir nesnenin tür bilgilerini alır.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1).

(Devralındığı yer: Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar.

(Devralındığı yer: Attribute)

Şunlara uygulanır