在组件服务中运行业务对象
重要
从 Windows 8 和 Windows Server 2012 开始,RDS 服务器组件不再包含在 Windows 操作系统中(有关详细信息,请参阅 Windows 8 和 Windows Server 2012 兼容性指南)。 RDS 客户端组件将在将来的 Windows 版本中删除。 避免在新开发工作中使用此功能,并计划修改当前使用此功能的应用程序。 使用 RDS 的应用程序应迁移到 WCF 数据服务。
业务对象可以是可执行文件(.exe)或动态链接库(.dll)。 用于运行业务对象的配置取决于该对象是 .dll 还是 .exe 文件:
可以通过 DCOM 调用创建为 .exe 文件的业务对象。 如果这些业务对象通过 Internet Information Services (IIS)使用,则它们会受到额外的数据封送处理,这会降低客户端性能。
创建为 .dll 文件的业务对象可以通过 IIS 使用,因此也可以通过 HTTP 使用。 如果使用的是 Windows NT,则它们还可以通过组件服务或通过 Microsoft Transaction Server 通过 DCOM 使用。 需要在 IIS 服务器计算机上注册业务对象 DLL 才能通过 IIS 访问它们。 有关如何将 DLL 配置为在 DCOM 上运行的信息,请参阅该部分,启用 DLL 在 DCOM上运行。
注意
当中间层上的业务对象通过使用 GetObjectContext、SetComplete和 SetAbort实现为组件服务组件时,业务对象可以使用组件服务(或 MTS)(如果使用 Windows NT)上下文对象在多个客户端调用中保持其状态。 可以使用 DCOM 实现此方案,该方案通常在 Intranet 中的受信任客户端和服务器之间实现。 在本例中,RDS。客户端上的 DataSpace 对象和 CreateObject 方法由事务上下文对象和 CreateInstance 方法替换,该方法由 ITransactionContext 接口提供,并由组件服务实现。