服务器端注册

本主题介绍一项传统技术,保留该技术是为了向后兼容现有的应用程序,不建议对新的开发使用该技术。现在应该使用  Windows Communication Foundation (WCF) 来开发分布式应用程序。

当通过 Internet 信息服务 (IIS) 承载服务器激活的或客户端激活的对象时,通常在 Web.config 文件中注册这些对象;或者当直接承载这些对象时,在应用程序配置文件中注册它们。将应用程序承载的所有对象放置到 <service> 元素内。

当发布服务器激活的 (<wellknown>) 对象时,必须指示该对象是 SingleCall 对象还是 Singleton 对象、该对象的类型以及可以访问该对象的终结点。当发布客户端激活的 (<activated>) 对象时,只需指示该对象的类型。

使用 IIS 配置服务器激活的类型

如果您想要在 Internet 信息服务中承载远程服务以利用 IIS 所提供的利益,则必须对配置文件稍作更改。您可以使用 Web.config 文件配置 IIS 以自动处理您的类型请求;或者可以通过使用 RemotingConfiguration.Configure 并传递配置文件的名称,在 Global.asax 文件中使用 Application_Start 处理程序加载您的配置文件。在这两种情况中:

  • 不要使用 <application> 标记的 name 特性指定应用程序名称。您为承载可远程处理类型而创建的虚拟目录将成为到您所用类型客户端的应用程序名称。

  • 不要在 <application> 标记内部使用 <channel> 标记的 port 特性指定端口。如果 IIS 创建新线程来处理新增的请求,则可能会创建新信道,但这将引发异常,因为该端口已由原始信道使用。相反,应在 Internet 服务管理器中指定要使用的端口。.NET 远程处理服务将通过该端口处理您的可远程处理类型的任何请求。

另请参见

任务

如何:为宿主应用程序域注册服务器激活的对象和客户端激活的对象

参考

System.Runtime.Remoting.RemotingConfiguration Class

概念

远程应用程序的配置
远程对象配置

其他资源

使用配置文件注册远程对象
.NET Framework 远程处理概述