我们正在为内部用户开发WPF业务应用程序,但这个问题也可以轻松应用于WinForms。我们希望利用业务规则引擎来更轻松地修改规则,并且可能让业务人员在某些时候自己完成。
BizTalk(我们正在使用2010年)公开了其业务规则引擎,虽然复杂,但它看起来是一个潜在有价值的解决方案,特别是如果我们希望将其用于未来的应用程序。我们已经加载了一个带有开发人员版本的虚拟服务器来试用它,以及它自己运行的SQL Server实例。
我读过的所有内容(example和example)似乎都表明将BRE程序集作为引用添加到应用程序项目中,然后使用提供的类来调用和执行策略。但他们还建议这些程序集需要许可证,我们无法为将使用此WPF应用程序的数十个可能的最终用户中的每一个准确许可BizTalk。
我对许可问题有误吗?将应用程序的BRE程序集部署到所有客户端计算机以便它们与存在策略的BizTalk服务器进行通信是否可以(并且正常)?我应该考虑通过Web服务或其他方式公开BRE API吗?那里有没有任何实现呢?公开这样的API似乎不是一件小事......或者是它?
答案 0 :(得分:1)
Microsoft称BRE仅适用于服务器端用途,例如,在BizTalk orchestrations,ASP.NET应用程序和服务器上运行的Windows服务中。该引擎无法嵌入客户端应用程序中。
BRE的所有技术支持和许可仅适用于 服务器端解决方案。请注意,您需要获取BizTalk Server 2010规则引擎使用规则引擎的许可证 考虑需要有效处理器许可的服务器软件该 规则引擎未与BizTalk Server分开许可。
因此,从可以从WPF客户端调用的ASP.NET服务中查看使用BRE可能是值得的。如果您希望客户能够更新规则,那么 在许可协议的范围内:
Rules Composer被视为客户端工具,可以安装在其上 一个单独的内部客户端设备,以支持开发和测试 您的BRE服务器解决方案
请务必查看Tellago's BRE Data Services API(CodePlex上提供)。如果您想通过自己的服务查询规则引擎,他们已经为您完成了大量工作。