Compartilhar via


DeliveryRequirementsAttribute Classe

Definição

Especifica os requisitos de recurso que as associações devem fornecer para a implementação do serviço ou 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
Herança
DeliveryRequirementsAttribute
Atributos
Implementações

Exemplos

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

Comentários

Use o DeliveryRequirementsAttribute WCF (Windows Communication Foundation) para confirmar que a associação fornece os recursos exigidos pela implementação do serviço ou do cliente. Se um DeliveryRequirementsAttribute atributo for detectado quando uma descrição do serviço for carregada de um arquivo de configuração de aplicativo ou criada programaticamente no código, o WCF validará a associação configurada e oferecerá suporte a todos os recursos especificados pelo atributo. Por exemplo, seu serviço pode exigir as associações para dar suporte à fila. O uso DeliveryRequirementsAttribute permite que o WCF confirme se os seguintes requisitos são atendidos:

O DeliveryRequirementsAttribute atributo é aplicado a uma classe, que pode implementar qualquer número de interfaces de contrato de serviço. DeliveryRequirementsAttribute pode ser aplicado a todos os contratos que a classe implementa ou a apenas um deles. O atributo pode ser aplicado a uma classe mais de uma vez.

Construtores

DeliveryRequirementsAttribute()

Inicializa uma nova instância da classe DeliveryRequirementsAttribute.

Propriedades

QueuedDeliveryRequirements

Especifica se a associação para um serviço deve dar suporte a contratos em fila.

RequireOrderedDelivery

Especifica se a associação deve dar suporte a mensagens ordenadas.

TargetContract

Obtém ou define o tipo ao qual ele se aplica.

TypeId

Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute.

(Herdado de Attribute)

Métodos

Equals(Object)

Retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
GetHashCode()

Retorna o código hash para a instância.

(Herdado de Attribute)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()

Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada.

(Herdado de Attribute)
Match(Object)

Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

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

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição.

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

Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1).

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

Fornece acesso a propriedades e métodos expostos por um objeto.

(Herdado de Attribute)
IContractBehavior.AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection)

Implementa o método IContractBehavior.AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection) para anexar parâmetros de associação corretamente.

IContractBehavior.ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime)

A implementação do método IContractBehavior.ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime) para suporte ao cliente.

IContractBehavior.ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime)

A implementação do método ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime) que habilita o suporte ao serviço.

IContractBehavior.Validate(ContractDescription, ServiceEndpoint)

Implementa o método IContractBehavior.Validate(ContractDescription, ServiceEndpoint) para habilitar o suporte de validação.

Aplica-se a