Web应用程序中的动态业务规则

Zaf*_*iro 8 c# asp.net business-logic inversion-of-control workflow-foundation

问候!

在基于Web的项目上工作是业务规则和逻辑需要由客户定制.我想这样做,而不必每次在系统上注册新客户端时重新编译应用程序.我到目前为止概述的架构是:

  1. Windows工作流:创建动态工作流并将其保存到数据库.
  2. 思考:创建业务规则界面并使用反射来加载自定义客户端程序集.
  3. 真正的业务规则引擎
  4. 实现像结构图一样的IOC容器.[zaff:已添加6/4]

你有没有实现类似的东西?如果是这样,你的经历是什么?最后还有另一种我应该探索的解决方案吗?

谢谢你的帮助!!

Jas*_*ber 2

我已经实施了你提到的大部分方法。答案可能取决于多种因素。

哪些客户角色将对业务规则进行更改(例如业务分析师、开发人员、高级用户等)?对业务分析师的有意义的支持可能需要一个在数据库中具有外部化规则的规则引擎和一个可用的 UI。对开发人员的有意义的支持可能就像利用 MEF ( http://www.codeplex.com/MEF ) 之类的东西一样简单。

您还可能会考虑业务规则需要更改的频率以及可能适用的相关操作要求(例如,主机进程必须保持运行、应用程序域卸载正常等)。一个好的选择可能需要仔细考虑未来可能的需求和不太可能的需求。