ChannelServices 类

定义

提供帮助进行远程处理信道注册、解析和 URL 发现的静态方法。 此类不能被继承。

public ref class ChannelServices sealed
public sealed class ChannelServices
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ChannelServices
type ChannelServices = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type ChannelServices = class
Public NotInheritable Class ChannelServices
继承
ChannelServices
属性

注解

通道跨远程处理边界(如应用程序域、进程和计算机)在应用程序之间传输消息。 这些交叉口可以是入站和出站。 通道可以在终结点上侦听入站消息、发送到终结点以获取出站消息,或同时侦听这两者。 这在运行时中提供了一个扩展点来插入各种协议,即使运行时可能不在通道的另一端也是如此。 运行时对象可用于公开各种语义和实体。 通道提供扩展点,用于将消息转换为特定协议和从特定协议转换消息。

通道必须公开 IChannel 接口,该接口提供和 ChannelPriorityChannelName信息性属性。 通道是使用 ChannelServices.RegisterChannel 方法注册的。 还可以从远程处理配置加载通道。 (有关详细信息,请参阅 <channel> Element (Template) 。)

在客户端,消息在遍历客户端链后将传递到客户端 Context 通道接收器链。 第一个通道接收器通常是 , IClientFormatterSink它将消息序列化为流,该流通过通道接收器链传递到客户端传输接收器。 然后客户端传输接收器将此流写出到网络。

在服务器端,服务器传输接收器从网络上读取请求,并将请求流传递到服务器通道接收器链。 此链末尾的服务器格式化程序接收器会将请求反序列化为消息。 然后,它会将此消息传递给远程处理基础结构,后者会将它调度到服务器 Context 链。

属性

RegisteredChannels

获取当前已注册信道的列表。

方法

AsyncDispatchMessage(IMessage, IMessageSink)

根据嵌入在消息中的 URI 将给定的消息异步调度到服务器端链。

CreateServerChannelSinkChain(IServerChannelSinkProvider, IChannelReceiver)

为指定的信道创建信道接收器链。

DispatchMessage(IServerChannelSinkStack, IMessage, IMessage)

调度传入的远程调用。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetChannel(String)

返回具有指定名称的注册信道。

GetChannelSinkProperties(Object)

返回给定代理的属性的 IDictionary

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
GetUrlsForObject(MarshalByRefObject)

返回所有可用于到达指定对象的 URL 的数组。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
RegisterChannel(IChannel)
已过时.

向信道服务注册信道。 RegisterChannel(IChannel) 已过时。 请改用 RegisterChannel(IChannel, Boolean)

RegisterChannel(IChannel, Boolean)

向信道服务注册信道。

SyncDispatchMessage(IMessage)

根据嵌入在消息中的 URI 将传入的消息同步调度到服务器端链。

ToString()

返回表示当前对象的字符串。

(继承自 Object)
UnregisterChannel(IChannel)

从注册信道列表中注销特定的信道。

适用于

另请参阅