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

问题描述 投票:0回答:8

您能否提供一个用 C# 编写的规则定义语言的好示例。
Java 人有JESS,C# 有什么好东西吗?

c# rule-engine
8个回答
9
投票

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


2
投票

您可以使用 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


2
投票

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


1
投票

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

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

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

  • 系统.工作流程.活动
  • 系统.工作流.组件模型
  • 系统.工作流程.运行时

查看文章了解更多信息。


0
投票

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


0
投票

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


0
投票

查看 codeplex 上的 Jetfire。它支持前向链接“rules”。


0
投票

现代替代方案似乎是:

这里有一篇博客文章对这些进行了比较,包括与自己编写的规则引擎进行比较。

© www.soinside.com 2019 - 2024. All rights reserved.