远程应用程序的配置

为了远程处理正常工作,.NET 远程处理基础结构需要某些特定的信息。配置可远程处理的类型的方法有两种:可以在服务器和客户端代码中直接调用配置方法(有关详细信息,请参见编程配置),或者可以创建远程处理配置节,然后将其包含到应用程序的配置文件(Web.config 文件或 Machine.config 文件)中(有关详细信息,请参见远程对象配置)。这两种配置过程各有优缺点,所以您的选择将取决于您自己的喜好。

要使您的类型成为可远程处理的,必须向远程处理系统提供下列信息:

  • 您的类型所需的激活类型。

  • 描述您的类型的完整元数据。

  • 注册为您的类型请求进行处理的信道。

  • 唯一标识该类型的对象的 URL。对于服务器激活,这意味着对该类型唯一的统一资源标识符 (URI)。对于客户端激活,将分配对该实例唯一的 URL。

客户端和服务器远程处理基础结构都必须了解这些信息,才能为远程服务器对象创建代理并将方法调用调度到远程服务器对象。客户端也可能具有它们可用的特别配置。如果客户端应用程序请求客户端激活的对象,该客户端可以请求延长与该实例相关联的生存期。最后,如果客户端需要某种回调,客户端本身必须主动地注册信道以侦听该回调。(在其他所有情况下,如果系统具有兼容的客户端信道,.NET 远程处理系统会自动定位此类信道。)服务器可以为客户端激活的对象指定默认的生存期时间,或指定其使用特定的自定义对象激活器。

如果您在为 .NET Framework 远程处理服务器配置 TCP 或 HTTP 服务器信道,并且服务器计算机具有多个网络接口卡 (NIC) 或其 IP 地址发生变化的 NIC(例如无线 NIC),则为了确保 .NET Framework 远程处理可以定位该服务器计算机,必须将该信道配置为使用 machineName 属性。有关更多信息,请参见信道和格式化程序配置属性中对 machineName 属性的说明。

如果要在尝试创建实例前提供有关可远程处理的对象的所有信息,则可以使用 new 关键字(在 Visual Basic 中为 New);否则必须使用 Activator.GetObjectActivator.CreateInstance

备注

虽然前面的配置文件中只有几项设置,但在使用 .NET 远程处理时遇到的大多数问题都与这几项配置有关,原因或者是其中的某些设置不正确,或者是与客户端应用程序的配置设置不匹配。很容易输入错误的名称、忘记端口或者忽略属性。如果您的远程处理应用程序有问题,请首先检查配置设置。

请参见

参考

远程处理设置架构

概念

元数据问题
激活 URL
编程配置
.NET Framework 远程处理中的自动反序列化
信道和格式化程序配置属性
在 Internet 信息服务 (IIS) 中承载远程对象
远程处理示例:在 Internet 信息服务 (IIS) 中承载

其他资源

.NET Framework 远程处理概述