WCF client objects, whether an extension of ClientBase<(Of <(TChannel>)>) or of IClientChannel, are used by Windows Communication Foundation (WCF) client applications to convert method calls into outbound messages and convert incoming messages to objects and pass them to the results of client methods.
The ClientRuntime class is an extensibility point to which you can add extension objects that intercept messages and extend client behavior across all operations. Interception objects can process all messages in a particular contract, process only messages for particular operations, perform custom channel initialization, and implement other custom client application behavior. For an overview of client architecture, see Client Architecture. For more information about client programming, see Consuming Services Using a Client. For details about customizations and how to perform them, see Extending Clients.
The CallbackDispatchRuntime property returns the dispatch run-time object for service-initiated callback operations.
The OperationSelector property accepts a custom operation selector object to control the routing of client messages.
The ChannelInitializers property enables the addition of a channel initializer that can inspect or modify the client channel.
The InteractiveChannelInitializers property can be used to display a visual prompt to enable a user to select credentials prior to opening the channel.
The Operations property gets a collection of ClientOperation objects to which you can add custom message interceptors that provide functionality specific to the messages of that operation.
The ManualAddressing property enables an application to turn off some automatic addressing headers to directly control addressing.
The MaxFaultSize property enables the client to limit the size of fault messages that the client accepts.
The MessageInspectors property gets a collection of IClientMessageInspector objects to which you can add custom message interceptors for all messages traveling through a client.
The UnhandledClientOperation property returns the operation to which unexpected messages are passed.
The ValidateMustUnderstand property informs the system whether it should confirm that SOAP headers marked as MustUnderstand have, in fact, been understood.
The Via property sets the value of the destination of the message at the transport level to support intermediaries and other scenarios.
In addition, there are a number of other properties that retrieve the client contract information:
If the client is a duplex client, the following properties also retrieve the client callback type and runtime: