System.Runtime.Remoting.Messaging 命名空间

System.Runtime.Remoting.Messaging 命名空间包含用于创建和传输消息的类。远程处理结构使用消息与远程对象进行通信。消息用于传输远程方法调用、激活远程对象和传达信息。消息对象携带一组命名属性,包括操作标识符、代表信息和参数等。System.Runtime.Remoting.Messaging 命名空间的一些最重要的类是 AsyncResult 类、RemotingSurrogateSelector 类和 ReturnMessage 类。

AsyncResult 类存储和返回异步方法调用的结果。AsyncResult 实例包含 return 值、调用状态、用于该调用的委托以及其他有关该异步方法调用的信息。

RemotingSurrogateSelector 类可用于控制扩展 MarshalByRefObject 的对象的序列化。RemotingSurrogateSelector 选择用在这种对象的序列化和反序列化中的代理项。代理项是可以控制对象的序列化或反序列化的对象。

ReturnMessage 类保存远程方法调用后返回的信息。ReturnMessage 保存从该远程方法调用产生的 return 值和所有 outref 参数。

  说明
公共类 AsyncResult 封装异步委托上的异步操作的结果。
公共类 CallContext 提供与执行代码路径一起传送的属性集。无法继承此类。
公共类 ConstructionCall 实现 IConstructionCallMessage 接口以创建一条请求消息,该消息构成远程对象上的构造函数调用。
公共类 ConstructionResponse 实现 IConstructionReturnMessage 接口以创建一个消息,该消息对实例化远程对象的调用做出响应。
公共类 Header 定义调用的带外数据。
公共类 InternalMessageWrapper 包装在消息接收器之间传递的远程处理数据,或者用于从客户端到服务器的请求,或者用于后续的响应。
公共类 LogicalCallContext 提供在进行远程方法调用期间用执行代码路径传送的一组属性。
公共类 MethodCall 实现 IMethodCallMessage 接口来创建一个请求消息,该消息作为远程对象上的方法调用。
公共类 MethodCallMessageWrapper 实现 IMethodCallMessage 接口来创建一个请求消息,该消息作为远程对象上的方法调用。
公共类 MethodResponse 实现 IMethodReturnMessage 接口来创建一条消息,该消息作为远程对象上的方法响应。
公共类 MethodReturnMessageWrapper 实现 IMethodReturnMessage 接口以创建一条消息,该消息作为远程对象上的方法调用的响应。
公共类 OneWayAttribute 将方法标记为单向方法,无返回值和 outref 参数。
公共类 RemotingSurrogateSelector 选择可用于序列化从 MarshalByRefObject 派生的对象的远程处理代理项。
公共类 ReturnMessage 保存为响应远程对象上的方法调用而返回的消息。

接口

  接口 说明
公共接口 ILogicalThreadAffinative 标记可以在 LogicalCallContext 中传播到 AppDomain 外部的对象。
公共接口 IMessage 包含在合作的消息接收器之间发送的通讯数据。
公共接口 IMessageCtrl 提供一种方法,以在使用 IMessageSink.AsyncProcessMessage 调度异步消息后控制这些消息。
公共接口 IMessageSink 定义消息接收器的接口。
公共接口 IMethodCallMessage 定义方法调用消息接口。
公共接口 IMethodMessage 定义方法消息接口。
公共接口 IMethodReturnMessage 定义方法调用返回消息接口。
公共接口 IRemotingFormatter 提供所有格式化程序的远程过程调用 (RPC) 接口。

委托

  委托 说明
公共委托 HeaderHandler 表示将在反序列化期间处理流上的标头的方法。
公共委托 MessageSurrogateFilter 确定在为 MarshalByRefObject 类创建 ObjRef 时,RemotingSurrogateSelector 类是否忽略某个特定的 IMessage 属性。