动态表单创建 - XSD XML SQL

时间:2013-02-03 19:01:31

标签: c# xml asp.net-mvc xsd

我想创建一个网站,让用户能够创建/设计自己的动态表单。 (c#asp MVC4)。文本框,下拉菜单,复选框,单选按钮等

我正在考虑这样做,创建的表单模板将是XML,我将通过xslt将其转换为HTML以呈现给用户。

保存/编辑表单后,我会将该表单的结果存储到数据库表中。每一行都有一个表单ID,字段名称,标识字段类型的属性(日期,整数,字符串),值。

我的问题是这些:

  1. 你认为这是正确的做法吗?我 遗漏了什么?有没有更简单的方法呢?
  2. 我应该将信息保存到数据库吗?我在考虑只是保存 表单到XML,提交的值在单个条目中 然而,我认为这可能会减慢以后查询数据的速度, 因为它需要解析大量的XML。
  3. 那里有什么东西我可以使用:任何推荐 XSD是我可以用于初学者的吗?项目

2 个答案:

答案 0 :(得分:2)

对于它的价值:是的,它在这里说使用XML来描述表单是描述表单的好方法。

您可能会发现查看XForms很有帮助(spec写得很清楚,Steven Pemberton编写了一篇优秀的tutorial on XForms for users of HTML forms)。您可能会发现使用XForms做起来比通过从头开始编写应用程序更容易。或者,如果您决定从头开始编写自己的应用程序,您可能会发现XForms设计值得研究。

我认为我对数据库的问题不够清楚,无法回答它。请记住,如果使用XQuery数据库(例如SQL Server),解析存储在数据库中的XML的成本可能相对较低。

答案 1 :(得分:0)

如果您不需要拖放功能,CKEditor可以根据您的要求进行调整。

还可以选择使用预标记来保持所创建表单的最低细节级别。

我认为你决定不使用XML,考虑到现在可用的免费选项数量,这是一个明智的选择。