Compartir a través de


DeliveryRequirementsAttribute Clase

Definición

Especifica los requisitos de características que los enlaces deben proporcionar al servicio o implementación del cliente.

public ref class DeliveryRequirementsAttribute sealed : Attribute, System::ServiceModel::Description::IContractBehavior
public ref class DeliveryRequirementsAttribute sealed : Attribute, System::ServiceModel::Description::IContractBehavior, System::ServiceModel::Description::IContractBehaviorAttribute
public sealed class DeliveryRequirementsAttribute : Attribute, System.ServiceModel.Description.IContractBehavior
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=true)]
public sealed class DeliveryRequirementsAttribute : Attribute, System.ServiceModel.Description.IContractBehavior, System.ServiceModel.Description.IContractBehaviorAttribute
type DeliveryRequirementsAttribute = class
    inherit Attribute
    interface IContractBehavior
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=true)>]
type DeliveryRequirementsAttribute = class
    inherit Attribute
    interface IContractBehavior
    interface IContractBehaviorAttribute
Public NotInheritable Class DeliveryRequirementsAttribute
Inherits Attribute
Implements IContractBehavior
Public NotInheritable Class DeliveryRequirementsAttribute
Inherits Attribute
Implements IContractBehavior, IContractBehaviorAttribute
Herencia
DeliveryRequirementsAttribute
Atributos
Implementaciones

Ejemplos

using System;
using System.ServiceModel;

[ServiceContract]
interface ICalculatorService
{
  [OperationBehavior()]
  int Add(int a, int b);

  [OperationContract]
  int Subtract(int a, int b);
}

[DeliveryRequirementsAttribute(
  QueuedDeliveryRequirements=QueuedDeliveryRequirementsMode.NotAllowed,
  RequireOrderedDelivery=true
)]
class CalculatorService: ICalculatorService
{
  public int Add(int a, int b)
  {
    Console.WriteLine("Add called.");
    return a + b;
  }

  public int Subtract(int a, int b)
  {
    Console.WriteLine("Subtract called.");
    return a - b;
  }

  public int Multiply(int a, int b)
  {
    return a * b;
  }
}
Imports System.ServiceModel

<ServiceContract()> _
Public Interface ICalculatorService

    <OperationBehavior()> _
    Function Add(ByVal a As Integer, ByVal b As Integer) As Integer

    <OperationContract()> _
    Function Subtract(ByVal a As Integer, ByVal b As Integer) As Integer
End Interface

<DeliveryRequirements( _
    QueuedDeliveryRequirements:=QueuedDeliveryRequirementsMode.NotAllowed, _
    RequireOrderedDelivery:=True _
)> _
Class CalculatorService
    Public Function add(ByVal a As Integer, ByVal b As Integer) As Integer
        Console.WriteLine("Add called")
        Return a + b
    End Function

    Public Function Subtract(ByVal a As Integer, ByVal b As Integer) As Integer
        Console.WriteLine("Subtract called.")
        Return a - b
    End Function

    Public Function Multiply(ByVal a As Integer, ByVal b As Integer) As Integer
        Return a * b
    End Function
End Class

Comentarios

DeliveryRequirementsAttribute Use para indicar a Windows Communication Foundation (WCF) que confirme que el enlace proporciona las características necesarias para la implementación del servicio o cliente. Si se detecta un DeliveryRequirementsAttribute atributo cuando se carga una descripción del servicio desde un archivo de configuración de aplicación o se compila mediante programación en el código, WCF valida el enlace configurado y admite todas las características que especifica el atributo. Por ejemplo, su servicio puede requerir que los enlaces admitan la puesta en cola. El uso DeliveryRequirementsAttribute de permite a WCF confirmar que se cumplen los siguientes requisitos:

El atributo DeliveryRequirementsAttribute se aplica a una clase, que puede implementar un número ilimitado de interfaces de contrato de servicio. DeliveryRequirementsAttribute se puede aplicar a todos los contratos implementados por la clase o solo a uno de ellos. El atributo se puede aplicar a más de una clase a la vez.

Constructores

DeliveryRequirementsAttribute()

Inicializa una nueva instancia de la clase DeliveryRequirementsAttribute.

Propiedades

QueuedDeliveryRequirements

Especifica si el enlace de un servicio debe admitir contratos en cola.

RequireOrderedDelivery

Especifica si el enlace debe admitir mensajes ordenados.

TargetContract

Obtiene o establece el tipo al que se aplica.

TypeId

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

(Heredado de Attribute)

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)
IContractBehavior.AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection)

Implementa el método IContractBehavior.AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection) para adjuntar correctamente parámetros de enlace.

IContractBehavior.ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime)

Implementación del método IContractBehavior.ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime) para la compatibilidad de cliente.

IContractBehavior.ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime)

Implementación del método ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime) que habilita la compatibilidad con respecto al servicio.

IContractBehavior.Validate(ContractDescription, ServiceEndpoint)

Implementa el método IContractBehavior.Validate(ContractDescription, ServiceEndpoint) para habilitar la compatibilidad con respecto a la validación.

Se aplica a