NGWS SDK Documentation  

This is preliminary documentation and subject to change.
To comment on this topic, please send us email at ngwssdk@microsoft.com. Thanks!

IChannel Interface

Channels provide conducts for messages that cross remoting boundaries (for example, Context, AppDomain, Processes, and Machines). These crossings include both inbound and outbound. A channel can listen on an endpoint for inbound messages or send to an endpoint for outbound messages or both. This provides an extensibility point in the runtime to plug in a wide range protocols, even though the runtime may not be at the other end of the channel.

Runtime objects can be used to expose and represent a wide and rich set of semantics and entities. The channel provides the extensibility point to convert the messages to and from the specific protocols. If there are runtimes are both ends of the channel, a "virtual channel" is created between the two ends, in order to connect the client and sever sink chains on either side of the boundary together.

The client part of the channel is located at the end of Client context sink chain. The server part of the channel is located at the start of the Server context sink chain. Messages are delivered to the client channel via the IMessageSink interface, travel through the channel, and are received by the server channel. The server channel delivers the message to the first server context sink. Channels must expose the IChannel interface, which provides informational properties such as the ChannelName, ChannelPriority and MimeType. Channels are registered via RegisterChannel.

IChannel

[Visual Basic]
Public Interface IChannel
[C#]
public interface IChannel
[C++]
public __gc __interface IChannel

[JScript] In JScript, you can use the interfaces in the NGWS frameworks, but you cannot define your own.

Remarks

[To be supplied.]

Requirements

Namespace: System.Runtime.Remoting

Assembly: mscorlib.dll

See Also

IChannel Members | System.Runtime.Remoting Namespace