System.Runtime.Remoting 命名空间
System.Runtime.Remoting 命名空间提供允许开发人员创建和配置分布式应用程序的类和接口。System.Runtime.Remoting 命名空间的一些更重要的类是 RemotingConfiguration 类、RemotingServices 类和 ObjRef 类。
RemotingConfiguration 类包含用于与配置设置衔接的静态方法。RemotingConfiguration.Configure 方法允许开发人员通过使用 XML 格式化配置文件来配置远程处理基础结构。RemotingConfiguration 类还包含若干在客户端和服务器端注册驻留在服务器上的客户端激活对象和服务器端激活对象的方法。
RemotingServices 类提供若干帮助使用和发布远程对象的方法。System.Runtime.Remoting.RemotingServices.Marshal 方法提供在 ObjRef 类的实例中存储激活远程对象并与之通信所需的所有相关信息供以后序列化和传输到远程位置使用的功能。System.Runtime.Remoting.RemotingServices.Unmarshal 方法反转此过程,为远程对象创建可由应用程序使用的代理,不考虑任何远程处理分支。
ObjRef 类保存激活远程对象并与之通信所需的所有相关信息。该类是通过信道传输到远程位置的对象的序列化表示形式,在信道中它被取消封送(请参见 Unmarshal)并可用于创建远程对象的本地代理。
提示
通过引用封送的对象 (MBR) 从不驻留在内存中。而是,除非类型重写 MarshalByRefObject.InitializeLifetimeService 以控制自己的生存期策略,否则在 .NET Framework 远程处理系统开始删除并回收内存的过程之前,每个 MBR 都具有有限的生存期。有关更多信息,请参见 生存期租约。
类
类 | 说明 | |
---|---|---|
ActivatedClientTypeEntry | 将在客户端注册的对象类型的值保存为可以在服务器上激活的类型。 | |
ActivatedServiceTypeEntry | 将在服务端注册的对象类型的值保存为可以应客户端请求激活的类型。 | |
InternalRemotingServices | 定义供 .NET Framework 远程处理基础结构使用的实用工具方法。 | |
ObjectHandle | 包装按值封送对象引用,从而使它们可以通过间接寻址返回。 | |
ObjRef | 存储生成代理以与远程对象通信所需的所有相关信息。 | |
RemotingConfiguration | 提供多种配置远程处理结构的静态方法。 | |
RemotingException | 在远程处理过程中出现错误时引发的异常。 | |
RemotingServices | 提供多种使用和发布远程对象及代理的方法。无法继承此类。 | |
RemotingTimeoutException | 在以前指定的某个时期内无法到达服务器或客户端时引发的异常。 | |
ServerException | 当客户端连接到无法引发异常的非 .NET Framework 应用程序时,则引发该异常,以向客户端传达错误。 | |
SoapServices | 提供若干使用和发布 SOAP 格式的远程对象的方法。 | |
TypeEntry | 实现保存用来激活远程类型实例的配置信息的基类。 | |
WellKnownClientTypeEntry | 将在客户端注册的对象类型的值保存为服务器激活类型(单个调用或 singleton)。 | |
WellKnownServiceTypeEntry | 将在服务端注册的对象类型的值保存为服务器激活类型对象(单个调用或 singleton)。 |
接口
接口 | 说明 | |
---|---|---|
IChannelInfo | 提供与 ObjRef 一起传送的自定义信道信息。 | |
IEnvoyInfo | 提供代表信息。 | |
IObjectHandle | 定义用于从间接寻址打开按值封送对象的接口。 | |
IRemotingTypeInfo | 提供对象的类型信息。 |
枚举
枚举 | 说明 | |
---|---|---|
CustomErrorsModes | 指定如何处理自定义错误。 | |
WellKnownObjectMode | 定义如何激活已知对象。 |