基于C#的规则语言示例?

时间:2020-03-05 18:47:37  来源:igfitidea点击:

我们能否提供一个用C#编写的规则定义语言的好例子。
Java专家有JESS,C#有什么好处吗?

解决方案

回答

本页显示了一些使用C#的开源规则引擎的示例:http://csharp-source.net/open-source/rule-engines

回答

有Microsoft业务规则引擎:http://msdn.microsoft.com/en-us/library/aa561216.aspx。不知道它是否只能在Biztalk内部使用,它确实说它是.Net类库。

回答

微软业务规则引擎(BRE)是相当不错的。但是(但这是一个很大的问题),我们需要BizTalk Server许可证才能使用它。

回答

我们可以使用Windows Workflow Foundation(.NET 3.5及更高版本)的一部分的正向链接推理引擎。最好的部分是,它具有免费的运行时许可。

我们可以使用Acumen Business中的"规则管理器"并安装Windows Workflow Foundation适配器。安装后,将规则导出为WFRules(* .rules)。
将生成一个Visual Studio .NET解决方案,该解决方案显示如何独立调用规则引擎(无需工作流)

另请参见http://bizknowledge.blogspot.com/search/label/Windows%20Workflow%20Foundation

回答

我们可以将Windows Workflow Foundation(WF)工作流引擎与C#一起使用。我使用WF作为工作流引擎启动了一个小型项目,实际上使用起来非常简单。在这里查看我一直在开发的第一部分条目。

WF的有趣之处在于,如果我们只想针对某些实体或者对象编写一些自定义规则,则不必用到全部内容,这可以非常巧妙!而且,与BizTalk的BRE相比,参与工作要少得多(而且没有许可费用)。

我们需要添加对以下.Net程序集的引用,这些引用在.Net Framework v3.0及更高版本中可用:

  • System.Workflow.Activities
  • System.Workflow.ComponentModel
  • System.Workflow.Runtime

请查看该文章以获取更多信息。