3

我们正在为内部用户开发一个 WPF 业务应用程序,但这个问题也很容易适用于 WinForms。我们希望利用业务规则引擎使将来更容易修改规则,并可能让业务人员在某个时候自己完成。

BizTalk(我们使用的是 2010)公开了它的业务规则引擎,虽然很复杂,但这看起来是一个潜在的有价值的解决方案,特别是如果我们也希望将它用于未来的应用程序。我们已经加载了一个带有开发人员版本的虚拟服务器来试用它,以及它自己的 SQL Server 实例来运行。

我读过的所有内容(示例示例)似乎都显示将 BRE 程序集作为引用添加到应用程序项目中,然后使用提供的类来调用和执行策略。但他们还建议,这些程序集需要许可证,我们不能为将使用此 WPF 应用程序的数十个可能的最终用户中的每一个完全许可 BizTalk。

我对许可问题有误吗?是否可以(并且正常)将 BRE 程序集与您的应用程序一起部署到所有客户端计算机,以便它们与存在策略的 BizTalk 服务器进行通信?我是否应该考虑通过 Web 服务或其他方式公开 BRE API?是否已经有任何实现可以做到这一点?像这样公开 API 似乎不是一件小事……或者是吗?

4

1 回答 1

1

微软表示,BRE 仅可用于服务器端,例如在 BizTalk 编排、ASP.NET 应用程序和服务器上运行的 Windows 服务中。该引擎不能嵌入到客户端应用程序中。

他们关于许可的常见问题解答中

BRE 的所有技术支持和许可仅适用于服务器端解决方案。请注意,您需要获得 BizTalk Server 2010 许可证才能使用规则引擎,因为规则引擎被视为需要有效处理器许可证的服务器软件。规则引擎未与 BizTalk Server 分开许可。

因此,可能值得考虑使用可从 WPF 客户端调用的 ASP.NET 服务中的 BRE。如果您希望客户端能够更新规则,这在许可协议的范围内

Rules Composer 被视为客户端工具,可以安装在单独的内部客户端设备上,以支持 BRE 服务器解决方案的开发和测试

请务必查看Tellago 的 BRE 数据服务 API(可在CodePlex上获得)。如果您想通过自己的服务查询规则引擎,他们已经为您完成了很多工作。

于 2011-12-14T04:13:55.610 回答