DeliveryRequirementsAttribute Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Specifica i requisiti della funzionalità che le associazioni devono fornire all'implementazione del servizio o del client.
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
- Ereditarietà
- Attributi
- Implementazioni
Esempio
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
Commenti
Usare per DeliveryRequirementsAttribute indicare Windows Communication Foundation (WCF) per verificare che l'associazione fornisca le funzionalità necessarie dall'implementazione del servizio o del client. Se viene rilevato un DeliveryRequirementsAttribute attributo quando viene caricata una descrizione del servizio da un file di configurazione dell'applicazione o compilata a livello di codice, WCF convalida l'associazione configurata e supporta tutte le funzionalità specificate dall'attributo. Ad esempio, per un servizio può essere necessario che le associazioni supportino l'accodamento. L'uso DeliveryRequirementsAttribute consente a WCF di verificare che siano soddisfatti i requisiti seguenti:
La proprietà QueuedDeliveryRequirements specifica i requisiti di accodamento che un'associazione deve soddisfare.
La proprietà RequireOrderedDelivery indica se l'associazione deve supportare i messaggi ordinati.
La proprietà TargetContract indica il tipo al quale si applicano i requisiti.
L'attributo DeliveryRequirementsAttribute viene applicato a una classe che può implementare qualsiasi numero di interfacce del contratto di servizio. DeliveryRequirementsAttribute può essere applicato a tutti i contratti implementati dalla classe o solo a uno di essi. L'attributo può essere applicato a una classe più volte.
Costruttori
DeliveryRequirementsAttribute() |
Inizializza una nuova istanza della classe DeliveryRequirementsAttribute. |
Proprietà
QueuedDeliveryRequirements |
Specifica se l'associazione di un servizio deve supportare i contratti in coda. |
RequireOrderedDelivery |
Specifica se l'associazione deve supportare i messaggi ordinati. |
TargetContract |
Ottiene o imposta il tipo al quale si applica l'attributo. |
TypeId |
Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute. (Ereditato da Attribute) |
Metodi
Equals(Object) |
Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato. (Ereditato da Attribute) |
GetHashCode() |
Restituisce il codice hash per l'istanza. (Ereditato da Attribute) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
IsDefaultAttribute() |
In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata. (Ereditato da Attribute) |
Match(Object) |
Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |