ContractOptionAttribute Clase

Definición

Permite establecer opciones de contrato y herramienta en el ensamblado, tipo o granularidad del método.

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
Herencia
ContractOptionAttribute
Atributos

Comentarios

En la tabla siguiente se muestran las opciones admitidas actualmente.

Category Parámetro Valor/efecto
contrato herencia true para activar la herencia del contrato; false para desactivarlo. De manera predeterminada, es true.
motor en tiempo de ejecución comprobar true para activar la comprobación en tiempo de ejecución; false para desactivarlo. De manera predeterminada, es true.

Puede usar este atributo como se muestra en los ejemplos siguientes.

Para desactivar la comprobación en tiempo de ejecución de todo el ensamblado:

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

Para activar la comprobación del contrato en tiempo de ejecución para un tipo específico:

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

    ...  

Para desactivar la comprobación en tiempo de ejecución de un método específico:

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

Constructores

ContractOptionAttribute(String, String, Boolean)

Inicializa una nueva instancia de la clase ContractOptionAttribute usando la categoría, configuración y valor para habilitar/deshabilitar especificados.

ContractOptionAttribute(String, String, String)

Inicializa una nueva instancia de la clase ContractOptionAttribute usando la categoría, configuración y valor especificados.

Propiedades

Category

Obtiene la categoría de la opción.

Enabled

Determina si se habilita una opción.

Setting

Obtiene el valor de la opción.

TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)
Value

Obtiene el valor para la opción.

Métodos

Equals(Object)

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.

(Heredado de Attribute)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.

(Heredado de Attribute)
Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

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

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

(Heredado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.

(Heredado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

(Heredado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de Attribute)

Se aplica a