我们有一个非常大的 HTML 表单(> 100 个字段),它使用用户输入的数据更新 SQL Server 数据库。用户填写表单需要很长时间,但他们提交的每一条信息对业务流程都非常有价值。即使用户放弃了表单,我们也希望保留他们输入的所有内容。
我们计划为每个字段附加一个 onblur 事件,并使用 jQuery/AJAX 将每条数据立即发送回应用程序服务器。那部分非常简单。我们的问题是何时以及如何最好地将这些应用程序级信息保存到数据库中。同样,我们的首要任务是数据保留而不是性能,但我们也希望尽可能高效地做到这一点。
我看到的选项是:
- 让 Web 服务立即将每条数据发布到数据库服务器。
- 将信息存储在应用服务器上的自定义类中,然后定期调用更新方法将新数据发布到数据库。
- 将信息存储在视图或会话状态中,然后运行例程将此信息发布到数据库服务器。
- 还有一些我们没有想到的。
选项 1 似乎是最明显的故障保护,但也是最耗费资源的。选项 2 似乎是最优雅的,但我们是否可以绝对确定如果不先运行其更新方法就不能销毁自定义类实例?
谢谢你的帮助!