我正在检查无文档(!)Microsoft.RuleEngine
以使用C#与BusinessRuleComposer
一起使用。
我在某个地方进入了这个样本:
RuleEngineComponentConfiguration fr = new RuleEngineComponentConfiguration("MyAssembly", "Retriever");
RuleSet rs = new RuleSet("ruleset");
// associate the execution configuration with a ruleset
RuleSetExecutionConfiguration rsCfg = rs.ExecutionConfiguration;
rsCfg.FactRetriever = factRetriever;
RuleSet
是否等同于业务规则编写器中声明的Policy
?我想这是因为它们的属性有相似之处!
答案 0 :(得分:1)
不,他们不是一回事。
RuleSet是策略应用于Facts的规则的实际内存表示形式。如果您打开RuleSet并浏览类型,您将看到它是您在Composer中配置的内容。您也可以从Policy的实例向下钻取(从未尝试过;)。
要注意,此API不是用于执行策略,而是用于实际创建规则。你在Composer中做了什么,你可以在C#中做。
免责声明:自从我使用这部分BRE以来已经有4年了,所以内存有点模糊。