IBindingDeliveryCapabilities Interface

Definitie

Definieert de interface die bindingen moeten implementeren om de mogelijkheden te beschrijven en te adverteren die clients en services mogelijk nodig hebben.

public interface class IBindingDeliveryCapabilities
public interface IBindingDeliveryCapabilities
type IBindingDeliveryCapabilities = interface
Public Interface IBindingDeliveryCapabilities

Voorbeelden

Voor het volgende voorbeeld moet CalculatorService u een WSHttpBinding met bestelde berichtbezorging gebruiken. Betrouwbare sessies en levering in de wachtrij worden niet standaard gebruikt met deze binding, maar kunnen wel worden ingeschakeld.

<!-- Here is the configuration for a CalculatorService using a WSHttpBinding with ordered message delivery required. -->
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <system.serviceModel>
      <services>
         <service
             type="Microsoft.ServiceModel.Samples.CalculatorService">
            <!-- Use base address provided by host and a WSHttpBinding named "Binding1" -->
            <endpoint address=""
                      binding="wsHttpBinding"
                      bindingConfiguration="Binding1"
                      contract="Microsoft.ServiceModel.Samples.ICalculator" />
         </service>
      </services>

      <bindings>
         <wsHttpBinding>
            <binding name="Binding1">
               <!-- The next element enables a ReliableSession and required ordered delivery-->
      <reliableSession enabled="true" ordered="true"/>
      </binding>
         </wsHttpBinding>
      </bindings>

   </system.serviceModel>
</configuration>

// The CalculatorService configuration has enabled a reliable session
// with ordered delivery set to true. This means that the binding
// requirement for ordered delivery specified by the
// BindingRequirementsAttribute on the CalculatorService class
// implemented below will be satisfied by this WSHttpBinding.

using System;
using System.ServiceModel;

[ServiceContract]
interface ICalculatorService
{
  [OperationBehavior()]
  int Add(int a, int b);

  [OperationContract]
  int Subtract(int a, int b);
}

[BindingRequirements(
  QueuedDeliveryRequirements=RequirementsMode.Disallow,
  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;
  }
}

Opmerkingen

De IBindingDeliveryCapabilities interface moet worden geïmplementeerd door een binding als clients en services in staat moeten zijn om, als onderdeel van hun contract, te kunnen bepalen dat de functies die ze nodig hebben, door de binding worden geleverd.

Eigenschappen

Name Description
AssuresOrderedDelivery

Hiermee wordt een waarde opgehaald die aangeeft of de binding garanties kan bieden voor de bezorging van berichten in de volgorde waarin ze zijn verzonden.

QueuedDelivery

Hiermee wordt een waarde opgehaald die aangeeft of de binding ondersteuning kan bieden voor de bezorging van berichten in de wachtrij.

Van toepassing op