公开 COM+ 的最简单方法通过网络服务
我有一个非无状态的 COM+ 对象(需要一段时间才能初始化,并在 RAM 中维护大对象)。我想通过 Web 服务或 TCP/IP 将其功能公开给其他应用程序/主机。
我看到 COM+ 组件服务具有创建 SOAP 包装器并将它们附加到 IIS 的内置功能。然而,它看起来并没有使用来自 COM+ 对象的元数据,而且我不确定我是否可以控制对象的创建和销毁。
I have a COM+ object which is not stateless (it takes a while to initialize, and maintains large objects in RAM). I want to expose its functionality to other applications / hosts via web service or TCP/IP.
I saw that COM+ Component Services have a built-in capability to create SOAP wrappers and attach them to IIS. However, it looks like it doesn't use the meta-data from the COM+ objects, and I am not sure whether I have control over the creation and destruction of the objects.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您应该完全忘记使用内置集成功能的想法。这简直是个坏主意。
相反,您自己创建一个 WCF 服务来公开该对象。如果需要,WCF 服务可以是有状态的,这样来自同一客户端的对服务的多次调用都将转到 COM+ 对象的同一个实例(假设它支持多个实例)。
你的对象是事务性的吗?您可以通过 WCF 公开这一点,但不能通过内置的“集成”功能公开。
You should totally forget the idea of using the built-in integration capability. It's simply a bad idea.
Instead, create yourself a WCF service to expose the object. The WCF service can be stateful if necessary, such that multiple calls to the service from the same client will all go to the same instance of your COM+ object (assuming it supports multiple instances).
Is your object transactional? You can expose this through WCF, but not through the built-in "integration" capability.