0

我的应用程序有问题。使用表单,用户可以选择一个 excel 文件来填充数据库中的某个表。我在保存数据之前验证数据并显示带有一些验证消息的表格。我还展示了来自 excel 的全部数据。这是我的问题:

  1. 在将数据保存到数据库之前将数据保存在哪里?假设用户没有看到验证消息。他单击 SaveData 按钮。我们采取了一些行动,但我们的文件中没有数据。我们无法从 db 中提取数据,因为它也不存在。我们在第一个动作中可以访问数据,但现在我们在第二个动作中。
  2. 对于许多验证消息,我想使用分页。这是同样的问题 - 用户单击 NextPage 按钮,然后我们执行操作。我们没有任何来自 excel 的数据。
  3. 我应该将数据保存在 ViewBag 中吗?ajax可以在这里帮助我吗?我忘了一件事 - 我可以在一个 excel 文件(1000+)中有很多行。我使用 gridmvc 来呈现数据。

感谢您的帮助。


更新:如果验证失败,用户不能使用 excel 文件中的任何数据来填充数据库。他必须手动更正excel文件中的数据,然后再次尝试使用它。

4

2 回答 2

0

如果我在你那里 - 我会将 excel 上传到服务器,验证它并

  1. 如果验证失败 - 将验证日志作为文本文件返回给用户。

  2. 如果验证成功 - 将文件上传到数据库,无需额外确认。

在任何情况下,用户都无法修复网格中的错误,因此在加载有效的 Excel 之前将无法访问保存按钮。

在某些情况下,您可以将添加了验证列的 Excel 返回给用户。但我不确定这对用户是否更有用。

于 2014-11-11T15:30:06.567 回答
0

我建议你,将文件加载到服务器。读取 excel 文件的行和列并将其加载到数据集中。将一个新列作为错误添加到数据集中,现在验证数据集中的每一行,如果您发现该行有任何错误,然后将其推送到该错误列并将标志设置为真。

遍历所有行后,如果标志为真,则在用户界面上返回数据集或返回为 excel。

如果没有错误,则可以将 excel 保存到 db。

希望这可以帮助。

于 2014-11-11T17:18:29.707 回答