我最近实现了一个简单的动态表单引擎,它使用动态加载的 ASP.NET 控件和 EAV 模式来处理数据模型的可变特性。企业一度对最终产品非常满意,但现在要求更复杂的动态表单:
- 字段可见性与其他表单字段的值相关
- 与其他表单字段状态相关的可能值下拉列表
- 在整个表单中执行各种业务规则:即 FieldA 的值必须不超过 FieldX + 30 天,假设 FieldX 不为空,blah blah
- 其他复杂的领域间依赖关系和业务规则
如您所想,我正在寻找现成的解决方案,因为从头开始推出这样的引擎似乎乏味、耗时,而且并不是我们核心业务的真正组成部分。理想情况下,我想要包含所有层(业务逻辑、表示层和持久性)的完整 ASP.NET 框架(MVC 或 WebForms)。然而,乞丐不能成为选择者,所以我会使用一个只处理业务规则定义和评估的框架。此外,我正在寻找一个严格的服务器端解决方案,因为我的手被严格的政策所束缚,该政策不允许对客户端插件的任何依赖。
XForms 似乎是一个完美的选择,但我发现的唯一成熟的实现是基于 Java (Orbeon) 或 Django (Chiba) 的。我发现的其他 XForms 实现在某种程度上依赖于客户端插件。
如果我能找到一种方法将它与 ASP.NET 应用程序集成,我愿意使用 Orbeon,但我没有看到这种混合实现的实际示例。
我简要地查看了 Microsoft Office InfoPath,但它似乎不够强大,无法处理我需要实现的那种复杂场景。
欢迎所有想法!
最佳答案
你也应该看看 betterform ( http://betterform.de )。它是 Chiba 的继承者,与原来的 Chiba 相比有许多改进。它是开源的,并作为原始产品托管在 sourceforge 上。
关于asp.net - 用于 ASP.NET 的强大的服务器端动态表单引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3080302/