Bagikan melalui


ContractOptionAttribute Kelas

Definisi

Memungkinkan Anda mengatur opsi kontrak dan alat di perakitan, jenis, atau granularitas metode.

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
Warisan
ContractOptionAttribute
Atribut

Keterangan

Tabel berikut ini memperlihatkan opsi yang saat ini didukung.

Kategori Pengaturan Nilai/efek
contract Warisan true untuk mengaktifkan pewarisan kontrak; false untuk mematikannya. Default adalah true.
runtime bahasa umum Memeriksa true untuk mengaktifkan pemeriksaan run-time; false untuk mematikannya. Default adalah true.

Anda dapat menggunakan atribut ini seperti yang diilustrasikan dalam contoh berikut.

Untuk menonaktifkan pemeriksaan run-time untuk seluruh perakitan:

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

Untuk mengaktifkan pemeriksaan kontrak run-time untuk jenis tertentu:

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

    ...  

Untuk menonaktifkan pemeriksaan run-time untuk metode tertentu:

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

Konstruktor

ContractOptionAttribute(String, String, Boolean)

Menginisialisasi instans ContractOptionAttribute baru kelas dengan menggunakan kategori, pengaturan, dan nilai aktifkan/nonaktifkan yang disediakan.

ContractOptionAttribute(String, String, String)

Menginisialisasi instans ContractOptionAttribute baru kelas dengan menggunakan kategori, pengaturan, dan nilai yang disediakan.

Properti

Category

Mendapatkan kategori opsi.

Enabled

Menentukan apakah opsi diaktifkan.

Setting

Mendapatkan pengaturan untuk opsi .

TypeId

Ketika diimplementasikan di kelas turunan, mendapatkan pengidentifikasi unik untuk ini Attribute.

(Diperoleh dari Attribute)
Value

Mendapatkan nilai untuk opsi tersebut.

Metode

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
GetHashCode()

Mengembalikan kode hash untuk instans ini.

(Diperoleh dari Attribute)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
IsDefaultAttribute()

Ketika ditimpa di kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan.

(Diperoleh dari Attribute)
Match(Object)

Saat ditimpa di kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

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

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

(Diperoleh dari Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

(Diperoleh dari Attribute)

Berlaku untuk