DeliveryRequirementsAttribute Sınıf

Tanım

Bağlamaların hizmete veya istemci uygulamasına sağlaması gereken özellik gereksinimlerini belirtir.

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
Devralma
DeliveryRequirementsAttribute
Öznitelikler
Uygulamalar

Örnekler

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

Açıklamalar

DeliveryRequirementsAttribute Windows Communication Foundation'a (WCF) bağlamanın hizmet veya istemci uygulaması için gereken özellikleri sağladığını onaylamasını bildirmek için komutunu kullanın. DeliveryRequirementsAttribute Uygulama yapılandırma dosyasından bir hizmet açıklaması yüklendiğinde veya kodda program aracılığıyla oluşturulduğunda bir öznitelik algılanırsa, WCF yapılandırılan bağlamayı doğrular ve özniteliğin belirttiği tüm özellikleri destekler. Örneğin, hizmetiniz kuyruğa alma işlemini desteklemek için bağlamaları gerektirebilir. WCF'nin kullanılması DeliveryRequirementsAttribute , aşağıdaki gereksinimlerin karşılandığını onaylamasına olanak tanır:

  • özelliği, QueuedDeliveryRequirements bağlamanın karşılaması gereken kuyruğa alma gereksinimlerini belirtir.

  • özelliği, RequireOrderedDelivery bağlamanın sıralı mesajlaşmayı desteklemesi gerekip gerekmediğini gösterir.

  • TargetContract özelliği, gereksinimlerin hangi türe uygulandığını gösterir.

DeliveryRequirementsAttribute özniteliği, herhangi bir sayıda hizmet sözleşmesi arabirimi uygulayabilen bir sınıfa uygulanır. DeliveryRequirementsAttribute , sınıfın uyguladığı tüm sözleşmelere veya bunlardan yalnızca birine uygulanabilir. Özniteliği bir sınıfa birden çok kez uygulanabilir.

Oluşturucular

DeliveryRequirementsAttribute()

DeliveryRequirementsAttribute sınıfının yeni bir örneğini başlatır.

Özellikler

QueuedDeliveryRequirements

Bir hizmet bağlamasının kuyruğa alınmış sözleşmeleri desteklemesi gerekip gerekmediğini belirtir.

RequireOrderedDelivery

Bağlamanın sıralı iletileri desteklemesi gerekip gerekmediğini belirtir.

TargetContract

Uygulanacağı türü alır veya ayarlar.

TypeId

Türetilmiş bir sınıfta uygulandığında, bu Attributeiçin benzersiz bir tanımlayıcı alır.

(Devralındığı yer: Attribute)

Yöntemler

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür.

(Devralındığı yer: Attribute)
GetHashCode()

Bu örneğe ilişkin karma kodu döndürür.

(Devralındığı yer: Attribute)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IsDefaultAttribute()

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin değerinin türetilmiş sınıf için varsayılan değer olup olmadığını gösterir.

(Devralındığı yer: Attribute)
Match(Object)

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

(Devralındığı yer: Attribute)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

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

Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Bir arabirimin tür bilgilerini almak için kullanılabilecek bir nesnenin tür bilgilerini alır.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1).

(Devralındığı yer: Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar.

(Devralındığı yer: Attribute)
IContractBehavior.AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection)

IContractBehavior.AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection) Bağlama parametrelerini doğru şekilde eklemek için yöntemini uygular.

IContractBehavior.ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime)

İstemci desteği için yönteminin IContractBehavior.ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime) uygulanması.

IContractBehavior.ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime)

ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime) Hizmet desteğini etkinleştiren yöntemin uygulanması.

IContractBehavior.Validate(ContractDescription, ServiceEndpoint)

IContractBehavior.Validate(ContractDescription, ServiceEndpoint) Doğrulama desteğini etkinleştirmek için yöntemini uygular.

Şunlara uygulanır