Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase AspNetCompatibilityRequirementsAttribute

 

Publicado: octubre de 2016

Aplicado a un servicio Windows Communication Foundation (WCF) para indicar si ese servicio se puede ejecutar en código de compatibilidad ASP.NET.

Espacio de nombres:   System.ServiceModel.Activation
Ensamblado:  System.ServiceModel (en System.ServiceModel.dll)

System.Object
  System.Attribute
    System.ServiceModel.Activation.AspNetCompatibilityRequirementsAttribute

[AttributeUsageAttribute(AttributeTargets.Class)]
public sealed class AspNetCompatibilityRequirementsAttribute : Attribute, 
	IServiceBehavior

NombreDescripción
System_CAPS_pubmethodAspNetCompatibilityRequirementsAttribute()

Inicializa una nueva instancia de la clase AspNetCompatibilityRequirementsAttribute.

NombreDescripción
System_CAPS_pubpropertyRequirementsMode

Obtiene o establece el nivel de compatibilidad ASP.NET requerido por el servicio.

System_CAPS_pubpropertyTypeId

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

NombreDescripción
System_CAPS_pubmethodEquals(Object)

Esta API admite la infraestructura producto y no está diseñada para usarse directamente desde el código. Devuelve un valor que indica si esta instancia equivale al objeto especificado. (Heredado de Attribute).

System_CAPS_pubmethodGetHashCode()

Devuelve el código hash de esta instancia.(Heredado de Attribute).

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_pubmethodIsDefaultAttribute()

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).

System_CAPS_pubmethodMatch(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual al objeto especificado. (Heredado de Attribute).

System_CAPS_pubmethodToString()

Devuelve una cadena que representa al objeto actual. (Heredado de Object).

NombreDescripción
System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.(Heredado de Attribute).

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Obtiene la información del tipo de un objeto, que puede utilizarse para obtener la información del tipo de una interfaz. (Heredado de Attribute).

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfoCount(UInt32)

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

(Heredado de Attribute).

System_CAPS_pubinterfaceSystem_CAPS_privmethod_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).

System_CAPS_pubinterfaceSystem_CAPS_privmethodIServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection)

Agrega los datos personalizados a los que pueden tener acceso los elementos de enlace para admitir la implementación del contrato.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Comprueba que el tipo de hospedaje es coherente con los requisitos de compatibilidad ASP.NET.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Valida el comportamiento del servicio.

When applied to a service implementation class, this attribute indicates whether this service requires or supports vstecasp compatibility mode to be enabled for the hosting application domain (AppDomain).

AppDomains hosting indigo2 services can run in two different hosting modes:

  • Mixed Transports Mode (Default): In this mode, indigo2 services do not participate in the vstecasp HTTP pipeline. This guarantees that a indigo2 service behaves consistently, independent of hosting environment and transport.

  • ASP.NET Compatibility Mode: In this mode, WCF services participate in the ASP.NET HTTP pipeline in a manner similar to ASMX services. ASP.NET features such as File Authorization, UrlAuthorization, and HTTP Session State are applicable to WCF services running in this mode.

The hosting mode is controlled by the application-level configuration flag aspNetCompatibilityEnabled.

<system.serviceModel>

<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>

</system.serviceModel>

This flag is false by default and thus indigo2 services run in the Mixed Transports Mode unless you explicitly opt into the vstecasp compatibility mode.

Para obtener más información sobreASP.NET compatibility mode, see <serviceHostingEnvironment>.

Use the P:System.ServiceModel.Activation.AspNetCompatibilityRequirementsAttribute.RequirementsMode property to do this. At runtime, applications can detect if vstecasp compatibility mode is enabled by checking the value of the static property P:System.ServiceModel.ServiceHostingEnvironment.AspNetCompatibilityEnabled.

Service developers can ensure that their service is only run in ASP.NET Compatibility Mode by setting the P:System.ServiceModel.Activation.AspNetCompatibilityRequirementsAttribute.RequirementsMode property on the T:System.ServiceModel.Activation.AspNetCompatibilityRequirementsAttribute to F:System.ServiceModel.Activation.AspNetCompatibilityRequirementsMode.Required as shown in the following example

[ServiceContract(Namespace="http://Microsoft.ServiceModel.Samples")]
public interface ICalculatorSession
{
    [OperationContract]
    void Clear();
    [OperationContract]
    void AddTo(double n);
    [OperationContract]
    void SubtractFrom(double n);
    [OperationContract]
    void MultiplyBy(double n);
    [OperationContract]
    void DivideBy(double n);
    [OperationContract]
    double Equals();
}
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class CalculatorService : ICalculatorSession
{
    double result
    {   // Store result in AspNet session.
        get
        {
            if (HttpContext.Current.Session["Result"] != null)
                return (double)HttpContext.Current.Session["Result"];
            return 0.0D;
        }
        set
        {
            HttpContext.Current.Session["Result"] = value;
        }
    }

    public void Clear()
    {

    }

    public void AddTo(double n)
    {
        result += n;
    }

    public void SubtractFrom(double n)
    {
        result -= n;
    }

    public void MultiplyBy(double n)
    {
        result *= n;
    }

    public void DivideBy(double n)
    {
        result /= n;
    }

    public double Equals()
    {
        return result;
    }
}

.NET Framework
Disponible desde 3.0

Cualquier miembro ( Compartido en Visual Basic) estático público de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Volver al principio
Mostrar: