在组件服务中运行业务对象

重要

从 Windows 8 和 Windows Server 2012 开始,Windows 操作系统不再包含 RDS 服务器组件(有关更多详细信息,请参阅 Windows 8 和 Windows Server 2012 兼容性实用手册)。 Windows 的未来版本中将移除 RDS 客户端组件。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 使用 RDS 的应用程序应迁移到 WCF 数据服务

业务对象可以是可执行文件 (.exe) 或动态链接库 (.dll)。 用于运行业务对象的配置取决于对象是 .dll 还是 .exe 文件:

  • 可以通过 DCOM 调用创建为 .exe 文件的业务对象。 如果这些业务对象通过 Internet Information Services (IIS) 使用,则它们会受到其他封送数据的约束,这会降低客户端性能。

  • 创建为 .dll 文件的业务对象可以通过 IIS 使用,因此也可以通过 HTTP 使用。 它们也可以仅通过组件服务在 DCOM 上使用,或者如果你使用的是 Windows NT,还可以通过 Microsoft 事务服务器使用。 需要在 IIS 服务器计算机上注册业务对象 DLL 才能通过 IIS 访问它们。 有关如何将 DLL 配置为在 DCOM 上运行的信息,请参阅允许 DLL 在 DCOM 上运行一节。

注意

如果使用 GetObjectContext、SetComplete 和 SetAbort 作为组件服务组件实现中间层业务对象,则业务对象可以使用组件服务(或 MTS,如果使用 Windows NT)上下文对象跨多个客户端调用维护其状态。 DCOM 可以实现此方案,该方案通常在 Intranet 中受信任的客户端和服务器之间实现。 在本例中,客户端上的 RDS.DataSpace 对象和 CreateObject 方法替换为事务上下文对象和 CreateInstance 方法,这些对象和方法由 ITransactionContext 接口提供,并由组件服务实现。

另请参阅

RDS 基础知识