【问题标题】:Most flexibilities rule engine for .NET [closed].NET 的大多数灵活性规则引擎 [关闭]
【发布时间】:2011-01-10 07:18:12
【问题描述】:

我即将进行的项目与销售系统有关,因此主要要求之一是“用户可以自己修改促销”。促销活动各不相同,他们给了我一些。

  1. 买一送一,买二送三。
  2. 一个为 30%,两个为 50%,三个为 80%
  3. 购买产品 A 将享受产品 B 的 30% 折扣
  4. 每笔交易超过 20 美元可享受 20% 的折扣

我对规则引擎有点了解,请给我推荐一本书来学习。

【问题讨论】:

  • 我很想看看您将如何设计具有如此多变要求的 UI。我怀疑与编写规则引擎相比,设计 UI 会更加困难。
  • 我认为用户界面已经完成了——只需将每个数字替换为文本框,将编号列表替换为单选按钮。
  • 在过去的生活中,我设计了杂货店购物网站。我可以告诉你,促销的品种不少于170种。至少可以说令人难以置信!
  • @Jamiec,正如我与客户讨论的那样,我发现他们的促销活动有共同的模式,例如购买 x 件获得免费 y 件,购买 x 件折扣 y %,购买产品 x 获得产品 y,购买 x$ 获得折扣 y%。我想听听您的意见,您对此类关闭应用程序的体验如何?
  • O.P 有关于他们最终使用什么的任何信息吗?我正在尝试做一些非常相似的事情......

标签: c# .net rule-engine


【解决方案1】:

以前的 SO 答案可能会有所帮助:Looking for simple rules-engine library in .NET

你看过Windows Workflow Foundation

【讨论】:

    【解决方案2】:

    您可以为 .Net 使用商业规则引擎,例如 InRule 或 IBM ILOG Rules 或 FICO Blaze Advisor 的 .Net 版本。所有这些都可以轻松地将规则公开给业务用户,让他们可以安全地对其进行编辑,同时提供技术挂钩/API,以便轻松集成规则引擎和执行。

    【讨论】:

    • 正确。商业产品在这方面做得很好。其他选项是FlexRule,它允许在 Web 用户界面以及基于 Windows 的创作环境中公开规则。
    【解决方案3】:

    您可以使用BOO DSL 功能或使用Rhino.DSL(我们将其用作我们项目的宏引擎)

    至于您的示例,请查看 this 链接

    【讨论】:

      【解决方案4】:

      您可以使用我创建的基于属性的简单规则引擎:

      http://ruen.codeplex.com/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-03-24
        • 1970-01-01
        • 1970-01-01
        • 2011-12-01
        • 1970-01-01
        • 2010-09-17
        • 1970-01-01
        • 2015-04-19
        相关资源
        最近更新 更多