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

时间:2008-09-04 13:54:48

标签: c# rule-engine

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

7 个答案:

答案 0 :(得分:8)

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

答案 1 :(得分:2)

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

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

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

答案 2 :(得分:2)

试试http://rulesengine.codeplex.com 它有一个用于创建规则的流畅的界面包装器。 它重量轻,使用简单。

答案 3 :(得分:1)

您可以将Windows Workflow Foundation的(WF)工作流引擎与C#一起使用。我使用WF作为工作流引擎开始了一个小而简单的项目,它实际上非常简单易用。查看我在here上开发的第一部分条目。

WF的有趣之处在于,如果你愿意,你不必使用整个东西 - 如果你只想针对某些实体或对象编写一些自定义规则,你可以 - 非常巧妙!此外,搭乘BizTalk的BRE要少得多(并且没有许可费用)。

您需要添加对.Net Framework v3.0及更高版本中提供的以下.Net程序集的引用:

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

查看文章了解更多信息。

答案 4 :(得分:0)

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

答案 5 :(得分:0)

Microsoft业务规则引擎(BRE)非常好用。但是(这是一个很大的但是你需要一个BizTalk Server许可才能使用它。

答案 6 :(得分:0)

看看Jetfire on codeplex。它支持正向链接“rules”。