0

我目前有一个 3 步表单向导,可以从用户那里获取大量信息。第一页包含多个文本字段,第二页包含网格,第三页包含更多文本字段。我目前在每一步之后将数据持久化,并且在将每一行添加到网格中之后,在数据库中。原因是用户不会因为系统故障或会话超时而丢失他们输入的数据。我想知道这是否是保存这些信息的理想方式,或者是否有更好的方式?

任何帮助表示赞赏。

4

1 回答 1

0

有几种方法可以持久化数据:

  • 将发布的用户输入的数据重新发送回视图,然后使用 @Html.HiddenFor(model => model.Whatever)以确保它在发布时返回到控制器。这将继续将用户数据保留在视图模型中,您只需将其从视图传递到视图。
  • 在会话中保存用户数据HttpContext.Session["UserFormData"];
  • 或者,您可以像当前所做的那样将用户输入的数据保存到数据库中。我个人更喜欢这个,因为它解决了会话超时的问题。
于 2013-10-28T13:30:13.737 回答