DeliveryRequirementsAttribute Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Especifica os requisitos de funcionalidades que as associações devem fornecer para a implementação do serviço ou do 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
- 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
Observações
Use o DeliveryRequirementsAttribute para instruir Windows Communication Foundation (WCF) a confirmar que a ligação fornece as funcionalidades exigidas pelo serviço ou implementação do cliente. Se um DeliveryRequirementsAttribute atributo for detetado quando uma descrição de serviço é carregada a partir de um ficheiro de configuração de aplicação ou construída programaticamente em código, o WCF valida a ligação configurada e suporta todas as funcionalidades que o atributo especifica. Por exemplo, o seu serviço pode exigir que as ligações suportem a fila. Usar DeliveryRequirementsAttribute permite ao WCF confirmar que os seguintes requisitos são cumpridos:
A QueuedDeliveryRequirements propriedade especifica os requisitos de fila que uma vinculação deve cumprir.
A RequireOrderedDelivery propriedade indica se a vinculação deve suportar mensagens ordenadas.
A TargetContract propriedade indica a que tipo se aplicam os requisitos.
O DeliveryRequirementsAttribute atributo é aplicado a uma classe, que pode implementar qualquer número de interfaces de contratos de serviço. DeliveryRequirementsAttribute pode ser aplicado a todos os contratos que a classe implementa ou apenas a um deles. O atributo pode ser aplicado a uma classe mais do que uma vez.
Construtores
| Name | Description |
|---|---|
| DeliveryRequirementsAttribute() |
Inicializa uma nova instância da DeliveryRequirementsAttribute classe. |
Propriedades
| Name | Description |
|---|---|
| QueuedDeliveryRequirements |
Especifica se a vinculação de um serviço deve suportar contratos em fila. |
| RequireOrderedDelivery |
Especifica se a ligação deve suportar mensagens ordenadas. |
| TargetContract |
Obtém ou define o tipo a que se aplica. |
| TypeId |
Quando implementado numa classe derivada, obtém um identificador único para esta Attribute. (Herdado de Attribute) |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| GetHashCode() |
Devolve o código de hash para esta instância. (Herdado de Attribute) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsDefaultAttribute() |
Quando sobrescrito numa classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
| Match(Object) |
Quando sobrescrito numa classe derivada, devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |