ClientRuntime Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar insättningspunkten för klasser som utökar funktionerna i Windows Communication Foundation klientobjekt (WCF) för alla meddelanden som hanteras av ett klientprogram.
public ref class ClientRuntime sealed
public ref class ClientRuntime sealed : System::ServiceModel::Dispatcher::ClientRuntimeCompatBase
public sealed class ClientRuntime
public sealed class ClientRuntime : System.ServiceModel.Dispatcher.ClientRuntimeCompatBase
type ClientRuntime = class
type ClientRuntime = class
inherit ClientRuntimeCompatBase
Public NotInheritable Class ClientRuntime
Public NotInheritable Class ClientRuntime
Inherits ClientRuntimeCompatBase
- Arv
-
ClientRuntime
- Arv
Exempel
I följande kodexempel infogar en System.ServiceModel.Description.IEndpointBehaviorSystem.ServiceModel.Dispatcher.IClientMessageInspector i klientkörningen genom att lägga till den i MessageInspectors egenskapen.
#region IEndpointBehavior Members
public void AddBindingParameters(
ServiceEndpoint endpoint, BindingParameterCollection bindingParameters
) { return; }
public void ApplyClientBehavior(ServiceEndpoint endpoint, ClientRuntime clientRuntime)
{
clientRuntime.MessageInspectors.Add(new Inspector());
foreach (ClientOperation op in clientRuntime.Operations)
op.ParameterInspectors.Add(new Inspector());
}
public void ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher)
{
endpointDispatcher.DispatchRuntime.MessageInspectors.Add(new Inspector());
foreach (DispatchOperation op in endpointDispatcher.DispatchRuntime.Operations)
op.ParameterInspectors.Add(new Inspector());
}
public void Validate(ServiceEndpoint endpoint){ return; }
#Region "IEndpointBehavior Members"
Public Sub AddBindingParameters(ByVal endpoint As ServiceEndpoint, ByVal bindingParameters _
As BindingParameterCollection) Implements IEndpointBehavior.AddBindingParameters
Return
End Sub
Public Sub ApplyClientBehavior(ByVal endpoint As ServiceEndpoint, ByVal clientRuntime As ClientRuntime) _
Implements IEndpointBehavior.ApplyClientBehavior
clientRuntime.MessageInspectors.Add(New Inspector())
For Each op As ClientOperation In clientRuntime.Operations
op.ParameterInspectors.Add(New Inspector())
Next op
End Sub
Public Sub ApplyDispatchBehavior(ByVal endpoint As ServiceEndpoint, ByVal endpointDispatcher As _
EndpointDispatcher) Implements IEndpointBehavior.ApplyDispatchBehavior
endpointDispatcher.DispatchRuntime.MessageInspectors.Add(New Inspector())
For Each op As DispatchOperation In endpointDispatcher.DispatchRuntime.Operations
op.ParameterInspectors.Add(New Inspector())
Next op
End Sub
Public Sub Validate(ByVal endpoint As ServiceEndpoint) Implements IEndpointBehavior.Validate
Return
End Sub
I följande kodexempel visas en konfigurationsfil som läser in slutpunktsbeteendet i klientslutpunkten.
<client>
<endpoint
address="http://localhost:8080/SampleService"
behaviorConfiguration="clientInspectorsAdded"
binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_ISampleService"
contract="ISampleService"
name="WSHttpBinding_ISampleService"
>
</endpoint>
</client>
<behaviors>
<endpointBehaviors>
<behavior name="clientInspectorsAdded">
<clientInterceptors />
</behavior>
</endpointBehaviors>
</behaviors>
<extensions>
<behaviorExtensions>
<add
name="clientInterceptors"
type="Microsoft.WCF.Documentation.InspectorInserter, HostApplication, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null"
/>
</behaviorExtensions>
</extensions>
Kommentarer
WCF-klientobjekt, oavsett om ett tillägg av ClientBase<TChannel> eller IClientChannel, används av Windows Communication Foundation klientprogram (WCF) för att konvertera metodanrop till utgående meddelanden och konvertera inkommande meddelanden till objekt och skicka dem till resultatet av klientmetoder.
Klassen ClientRuntime är en utökningspunkt där du kan lägga till tilläggsobjekt som fångar upp meddelanden och utökar klientbeteendet för alla åtgärder. Avlyssningsobjekt kan bearbeta alla meddelanden i ett visst kontrakt, endast bearbeta meddelanden för vissa åtgärder, utföra anpassad kanalinitiering och implementera andra anpassade klientprogrambeteenden. En översikt över klientarkitekturen finns i WCF-klientarkitektur. Mer information om klientprogrammering finns i Åtkomst till tjänster med hjälp av en WCF-klient. Mer information om anpassningar och hur du utför dem finns i Utöka klienter.
Egenskapen CallbackDispatchRuntime returnerar körningsobjektet dispatch för tjänstinitierade återanropsåtgärder.
Egenskapen OperationSelector accepterar ett objekt för anpassad åtgärdsväljare för att styra routningen av klientmeddelanden.
Egenskapen ChannelInitializers gör det möjligt att lägga till en kanalinitierare som kan inspektera eller ändra klientkanalen.
Egenskapen InteractiveChannelInitializers kan användas för att visa en visuell fråga så att en användare kan välja autentiseringsuppgifter innan kanalen öppnas.
Egenskapen Operations hämtar en samling ClientOperation-objekt där du kan lägga till skräddarsydda meddelandehanterare som erbjuder funktionalitet anpassad för meddelandena i den specifika operationen.
Egenskapen ManualAddressing gör det möjligt för ett program att inaktivera vissa automatiska adresseringshuvuden för att styra adressering direkt.
Egenskapen MaxFaultSize gör det möjligt för klienten att begränsa storleken på felmeddelanden som klienten accepterar.
Egenskapen MessageInspectors hämtar en samling IClientMessageInspector objekt som du kan lägga till anpassade meddelandeavlyssnare för alla meddelanden som färdas via en klient.
Egenskapen UnhandledClientOperation returnerar åtgärden som oväntade meddelanden skickas till.
Egenskapen ValidateMustUnderstand informerar systemet om det ska bekräfta att SOAP-huvuden som har markerats som
MustUnderstandfaktiskt har förståtts.Egenskapen Via anger värdet för meddelandets mål på transportnivå för att stödja mellanhänder och andra scenarier.
Dessutom finns det ett antal andra egenskaper som hämtar klientkontraktsinformationen:
Om klienten är en duplex-klient hämtar följande egenskaper även klientåteranropstypen och körningen:
Egenskaper
| Name | Description |
|---|---|
| CallbackClientType |
Hämtar eller anger typen av återanropskontrakt som är associerat med en duplex-klient. |
| CallbackDispatchRuntime |
Hämtar körningstiden för sändning som skickar tjänstinitierade åtgärder. |
| ChannelInitializers |
Hämtar en samling kanalinitieringsobjekt som används för att anpassa kanalen som är associerad med en klient. |
| ClientMessageInspectors |
Hämtar en samling meddelandekontrollobjekt som används för att visa eller ändra meddelanden för en viss tjänståtgärd. |
| ClientOperations |
Hämtar en samling klientåtgärdsobjekt som används för att bifoga tilläggsobjekt som inspekterar eller ändrar meddelanden och beteende för en viss tjänståtgärd. |
| ContractClientType |
Hämtar eller anger typen av kontrakt som är associerat med en klient. |
| ContractName |
Hämtar namnet på kontraktet som är associerat med en klient. |
| ContractNamespace |
Hämtar namnområdet för kontraktet som är associerat med en klient. |
| InteractiveChannelInitializers |
Hämtar en samling av en interaktiv kanalinitierare. |
| ManualAddressing |
Hämtar eller anger ett värde som anger om klienten lägger till adresseringshuvuden i begärandesvarsmeddelanden. |
| MaxFaultSize |
Hämtar eller anger den maximala felstorleken. |
| MessageInspectors |
Hämtar en samling implementeringar av meddelandekontroll för en klient. |
| MessageVersionNoneFaultsEnabled |
Hämtar eller anger ett värde som anger om egenskapen MessageVersionNoneFaultsEnabled har angetts. |
| Operations |
Hämtar en samling klientåtgärder för en klient. |
| OperationSelector |
Hämtar eller anger en IClientOperationSelector implementering som kan användas för att välja en ClientOperation. |
| UnhandledClientOperation |
Hämtar klientåtgärden för metoder som inte har någon motsvarande ClientOperation i Operations samlingen. |
| ValidateMustUnderstand |
Hämtar eller anger ett värde som anger om systemet eller programmet framtvingar SOAP-sidhuvudbearbetning |
| Via |
Hämtar eller anger den transportadress som används för att skicka meddelanden via klienten. |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |