ContractOptionAttribute Clase

Definición

Permite establecer opciones de contrato y herramienta en la granularidad de ensamblado, tipo o 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 Setting Valor/efecto
contrato herencia true para activar la herencia del contrato; false para desactivarlo. El valor predeterminado es true.
runtime comprobación true para activar la comprobación en tiempo de ejecución; false para desactivarlo. El valor predeterminado 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 de contratos 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

Nombre Description
ContractOptionAttribute(String, String, Boolean)

Inicializa una nueva instancia de la ContractOptionAttribute clase mediante la categoría, la configuración y el valor de habilitar o deshabilitar proporcionados.

ContractOptionAttribute(String, String, String)

Inicializa una nueva instancia de la ContractOptionAttribute clase mediante la categoría, la configuración y el valor proporcionados.

Propiedades

Nombre Description
Category

Obtiene la categoría de la opción.

Enabled

Determina si una opción está habilitada.

Setting

Obtiene la configuración 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 de la opción .

Métodos

Nombre Description
Equals(Object)

Devuelve un valor que indica si esta instancia es igual a 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()

Cuando 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 reemplaza 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 Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

Nombre Description
_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)

Recupera la información de tipo de un objeto, que se puede usar para obtener la información de tipo 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 propiedades y métodos expuestos por un objeto .

(Heredado de Attribute)

Se aplica a