Namespace: System.Runtime.Remoting.Channels

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.

Members of System.Runtime.Remoting.Channels Namespace

Classes
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. 

Interfaces
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. 

Enumerations
Enumeration Description
enumeration SoapServerFormatterSink.Protocol Specifies the protocol to use with the SoapServerFormatterSink class. 
enumeration ServerProcessing Indicates the status of the server message processing. 

Namepace hierarchy

Copyright (c) 2002 Microsoft Corporation. All rights reserved.