|
|
1
1
查看Windows工作流基础中规则引擎的规则和表达式设计器。它们都可以在visual studio之外托管。特别是,我看到了一个示例,其中规则设计器被传递给一个给定类型作为其上下文,并且能够基于该类型的属性和这些属性引用的类型的属性创建规则和表达式。事实上,可以在对象图的根向它传递一个类型,然后引擎可以处理图中所有对象的属性。 |
|
|
2
0
我刚才是为一个大型的政府商业规则引擎做的。 使用xml schema来描述数据,我使用xmlschema注释来添加所有规则引擎特定的位,确保模式保持有效。 gui提供了一个传统的explorer样式的视图,其中一个tree view显示结构,而右侧窗格显示所选树节点的详细信息。 我使用了一些相当复杂的xslt(带有一些自定义扩展)来生成一个表示表单的小xml文档和一个小引擎,该引擎将根据表单定义动态呈现控件。 表单后面的代码更新一个xml片段,然后由另一个xslt片段转换回xml diffgram,并用于更新模式的内存表示。 构建带注释的XML架构后,编译器随后生成两个.NET程序集,一个包含架构的代码表示,另一个包含业务规则的实现。 这是一段相当复杂的代码,但是它非常灵活和动态,并且绝大多数ui可以通过xslt单独定制。实际上,有些用户需要不同的视图,这些视图完全通过包含xslt的附加动态加载程序集来处理。 花费大约250万英镑,花了两年多时间来开发,mind(整个事情,不仅仅是ui)。这仍然是我28年来最引以为豪的发展! 如果你愿意的话,很高兴再进一步讨论。 |