Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen.
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

IContractBehaviorAttribute-Schnittstelle

Gibt den Vertrag an, für den ein Attribut aktiv ist, das die System.ServiceModel.Description.IContractBehavior-Schnittstelle implementiert.

Namespace:  System.ServiceModel.Description
Assembly:  System.ServiceModel (in System.ServiceModel.dll)
public interface IContractBehaviorAttribute

Der IContractBehaviorAttribute-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche EigenschaftTargetContractRuft den Typ des Vertrags ab, auf den das Vertragsverhalten anwendbar ist.
Zum Seitenanfang

Implementiert die IContractBehaviorAttribute-Schnittstelle für ein Attribut, bei dem es sich auch um ein System.ServiceModel.Description.IContractBehavior-Objekt handelt, um die Verwendung dieses Vertragsverhaltensattributs für einen Diensttyp zu aktivieren, aber seine Anwendung auf den in der TargetContract-Eigenschaft angegebenen Vertrag zu beschränken.

Es ist nicht erforderlich, IContractBehaviorAttribute für Vertragsverhaltensattribute zu implementieren; wenn das Attribut auf eine Vertragsschnittstelle oder eine Duplexrückrufklasse angewendet wird, wird der Wert der TargetContract-Eigenschaft ignoriert.

Weitere Informationen finden Sie unter System.ServiceModel.Description.IContractBehavior.

Im folgenden Codebeispiel wird von einer benutzerdefinierten System.ServiceModel.Dispatcher.IInstanceProvider-Implementierung mit der Bezeichnung ObjectProviderBehavior ausgegangen, die ein Singletonverhalten ermöglicht; dabei wird stets die gleiche Dienstinstanz zurückgegeben und nicht wiederverwendet.

Zum Einfügen der Instanzanbieteranpassung wird in dem Beispiel die Implementierung eines benutzerdefinierten Attributs (SingletonBehaviorAttribute) veranschaulicht, das System.ServiceModel.Description.IContractBehavior implementiert, um den benutzerdefinierten Instanzanbieter des Diensts einzufügen.Es implementiert auch IContractBehaviorAttribute, wodurch dessen Anwendung an den ISampleService-Vertrag gebunden wird.


public class SingletonBehaviorAttribute : Attribute, IContractBehaviorAttribute, IContractBehavior
{

  #region IContractBehaviorAttribute Members

  public Type TargetContract
  {
    get { return typeof(ISampleService); }
  }

  #endregion

  #region IContractBehavior Members

  public void AddBindingParameters(ContractDescription description, ServiceEndpoint endpoint, System.ServiceModel.Channels.BindingParameterCollection parameters)
  {
    return;
  }

  public void ApplyClientBehavior(ContractDescription description, ServiceEndpoint endpoint, ClientRuntime clientRuntime)
  {
    return;
  }

  public void ApplyDispatchBehavior(ContractDescription description, ServiceEndpoint endpoint, DispatchRuntime dispatch)
  {
    dispatch.InstanceProvider = new ObjectProviderBehavior("Custom ObjectProviderBehavior constructor.");
  }

  public void Validate(ContractDescription description, ServiceEndpoint endpoint)
  {
    return;
  }

  #endregion
}


.NET Framework

Unterstützt in: 4, 3.5, 3.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)

Community-Beiträge

HINZUFÜGEN
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
© 2013 Microsoft. Alle Rechte vorbehalten.