你的位置:首页 > 软件开发 > ASP.net > 基于RulesEngine的业务规则实现

基于RulesEngine的业务规则实现

发布时间:2016-03-11 11:00:07
规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。比较常见的业务规则引擎有Drools、VisualRules 和iLog。这里介绍另外一 ...

  规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。比较常见的业务规则引擎有Drools、VisualRules 和iLog。这里介绍另外一个C#开源工具RulesEngine。下面通过一个例子来他如何使用。

1 项目结构

在RulesEngine源代码中添加一个RulesEngineDemo的窗体应用程序,然后引用需要的类库,如下图所示:

基于RulesEngine的业务规则实现

2 订单等实体类定义

这里用订单的场景来用规则引擎处理折扣的业务逻辑:

  public class Order  {    public double amount;    public double num;    public double discount;    public double afteramount;    public DateTime datetime;    public List<items> ItemLists;    public get='_blank'>string maker;//购买人    public string wfprocess;//审批人    public string wfprocessname;//审批人    public string memo;//备注    public override string ToString()    {      string res = string.Format("折扣={0},金额={1},审批人={2}({4}),折后金额={3}", discount, amount, wfprocess, afteramount,wfprocessname);      return res;    }  }  //用户  public class Emp  {    public string id;    public string leader;    public string name;  }  //明细  public class items  {    public string productid;    public string productname;    public double price;    public double num;    public double discount;    public double amount;    public double afteramount;  }

原标题:基于RulesEngine的业务规则实现

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录