DeliveryRequirementsAttribute Klasse

Definition

Gibt die Feature-Anforderungen an, die Bindungen für die Dienst- oder Client-Implementierung liefern müssen.

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
Vererbung
DeliveryRequirementsAttribute
Attribute
Implementiert

Beispiele

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

Hinweise

Verwenden Sie die DeliveryRequirementsAttribute Anleitung Windows Communication Foundation (WCF), um zu bestätigen, dass die Bindung die von der Dienst- oder Clientimplementierung erforderlichen Features bereitstellt. Wenn ein Attribut erkannt wird, wenn eine DeliveryRequirementsAttribute Dienstbeschreibung aus einer Anwendungskonfigurationsdatei geladen oder programmgesteuert im Code erstellt wird, überprüft WCF die konfigurierte Bindung und unterstützt alle Features, die das Attribut angibt. Ihr Dienst kann beispielsweise fordern, dass die Bindungen ein Queuing unterstützen. Mit DeliveryRequirementsAttribute WCF können Sie bestätigen, dass die folgenden Anforderungen erfüllt sind:

Das DeliveryRequirementsAttribute-Attribut wird auf eine Klasse angewendet, die jede beliebige Anzahl von Dienstvertragsschnittstellen implementieren kann. DeliveryRequirementsAttribute kann auf alle Verträge angewendet werden, die die Klasse implementiert, oder nur auf einen der Verträge. Das Attribut kann auf eine Klasse mehrfach angewendet werden.

Konstruktoren

DeliveryRequirementsAttribute()

Initialisiert eine neue Instanz der DeliveryRequirementsAttribute-Klasse.

Eigenschaften

QueuedDeliveryRequirements

Gibt an, ob die Bindung für einen Dienst in der Warteschlange befindliche Verträge unterstützen muss.

RequireOrderedDelivery

Gibt an, ob die Bindung sortierte Meldungen unterstützen muss.

TargetContract

Ruft den Typ ab, für den dies gültig ist, bzw. legt diesen fest.

TypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.

(Geerbt von Attribute)

Methoden

Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.

(Geerbt von Attribute)
GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

(Geerbt von Attribute)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

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

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von Attribute)
IContractBehavior.AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection)

Implementiert die IContractBehavior.AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection)-Methode, um Bindungsparameter korrekt anzufügen.

IContractBehavior.ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime)

Implementierung der IContractBehavior.ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime)-Methode für die Client-Unterstützung.

IContractBehavior.ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime)

Implementierung der ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime)-Methode, die die Dienstunterstützung aktiviert.

IContractBehavior.Validate(ContractDescription, ServiceEndpoint)

Implementiert die IContractBehavior.Validate(ContractDescription, ServiceEndpoint)-Methode zur Aktivierung der Validierungsunterstützung.

Gilt für