The System.Runtime.Remoting.Channels namespace contains classes that support and handle channels and channel sinks, which are used as the transport medium when a client calls a method on a remote object.
Channels are objects that transport messages between applications across remoting boundaries, whether between application domains, processes, or computers. A channel can listen on an endpoint for inbound messages, send outbound messages to another endpoint, or both. This enables you to plug in a wide range of protocols, even if the common language runtime is not at the other end of the channel.
Channels send each object along a chain of channel sink objects prior to sending or after receiving a message. This sink chain contains sinks required for basic channel functionality, such as transport or stack builder sinks, but you can customize the channel sink chain to perform special tasks with a message or a stream. Each sink in each chain receives the object, performs a specific operation, and passes it on to the next sink in the chain. There is no rule that the exact object received by a message sink must be passed on to the next sink, though this will often be the case.
For more information, see the conceptual topic at MSDN: channels and the conceptual topic at MSDN: sinkssinkchains.
Class | Description |
---|---|
class�BaseChannelObjectWithProperties | Provides a base implementation of a channel object that wants to provide a dictionary interface to its properties.� |
class�BaseChannelSinkWithProperties | Provides a base implementation for channel sinks that want to expose a dictionary interface to their properties.� |
class�BaseChannelWithProperties | Provides a base implementation for channels that want to expose a dictionary interface to their properties.� |
class�BinaryClientFormatterSink | Provides the implementation for a client formatter sink that uses the BinaryFormatter.� |
class�BinaryClientFormatterSinkProvider | Provides the implementation for the binary client formatter sink provider.� |
class�BinaryServerFormatterSink | Provides the implementation for a server formatter sink that uses the BinaryFormatter.� |
class�BinaryServerFormatterSinkProvider | Provides the implementation for the server formatter channel sink provider that uses the BinaryFormatter.� |
class�ChannelDataStore | Stores channel data for the remoting channels.� |
class�ChannelServices | Provides static methods to aid with remoting channel registration, resolution, and URL discovery. This class cannot be inherited.� |
class�ClientChannelSinkStack | Holds the stack of client channel sinks that must be invoked during an asynchronous message response decoding.� |
class�CommonTransportKeys | The transport keys associated with common values used by the channels.� |
class�ServerChannelSinkStack | Holds the stack of server channel sinks.� |
class�SinkProviderData | Stores sink provider data for sink providers.� |
class�SoapClientFormatterSink | Provides the implementation for a client formatter sink that uses the SoapFormatter.� |
class�SoapClientFormatterSinkProvider | Provides the implementation for a client formatter sink provider.� |
class�SoapServerFormatterSink | Provides the implementation for a server formatter sink that uses the SoapFormatter.� |
class�SoapServerFormatterSinkProvider | Provides the implementation for a server formatter channel sink provider that uses the SoapFormatter.� |
class�TransportHeaders | Stores a collection of headers used in the channel sinks.� |
Interface | Description |
---|---|
interface�IChannel | Provides conduits for messages that cross remoting boundaries.� |
interface�IChannelDataStore | Stores channel data for the remoting channels.� |
interface�IChannelReceiver | Provides required functions and properties for the receiver channels.� |
interface�IChannelReceiverHook | Indicates that the implementing channel wants to hook into the outside listener service.� |
interface�IChannelSender | Provides required functions and properties for the sender channels.� |
interface�IChannelSinkBase | Provides the base interface for channel sinks.� |
interface�IClientChannelSink | Provides required functions and properties for client channel sinks.� |
interface�IClientChannelSinkProvider | Creates client channel sinks for the client channel through which remoting messages flow.� |
interface�IClientChannelSinkStack | Provides functionality for a stack of client channel sinks that must be invoked during an asynchronous message response decoding.� |
interface�IClientFormatterSink | Marks a sink as a client formatter sink that serializes messages into a stream.� |
interface�IClientFormatterSinkProvider | Marks a client channel sink provider as a client formatter sink provider.� |
interface�IClientResponseChannelSinkStack | Provides the stack functionality for a stack of client response channel sinks that must be invoked during an asynchronous message response decoding.� |
interface�IServerChannelSink | Provides methods used for security and transport sinks.� |
interface�IServerChannelSinkProvider | Creates server channel sinks for the server channel through which remoting messages flow.� |
interface�IServerChannelSinkStack | Provides the stack functionality for a stack of server channel sinks.� |
interface�IServerFormatterSinkProvider | Marks a server channel sink provider as a server formatter sink provider.� |
interface�IServerResponseChannelSinkStack | Provides the stack functionality for a stack of server response channel sinks.� |
interface�ITransportHeaders | Stores a collection of headers used in the channel sinks.� |
Enumeration | Description |
---|---|
enumeration�SoapServerFormatterSink.Protocol | Specifies the protocol to use with the SoapServerFormatterSink class.� |
enumeration�ServerProcessing | Indicates the status of the server message processing.� |