Asp.net mvc 将excel文件中的数据保存到数据库之前,从何处保存数据?

Asp.net mvc 将excel文件中的数据保存到数据库之前,从何处保存数据?,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-4,asp.net-mvc-5,exceldatareader,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 4,Asp.net Mvc 5,Exceldatareader,我的应用程序有问题。使用表单,用户可以选择excel文件来填充数据库中的某些表。我在保存数据之前验证数据,并在表中显示一些验证消息。我还展示了excel中的全部数据。这是我的问题: 在将数据保存到数据库之前,在何处保存数据?假设用户没有看到验证消息。他点击SaveData按钮。我们执行了一些操作,但其中没有文件中的数据。我们无法从数据库中提取数据,因为它也不在那里。我们在第一次行动中访问了数据,但现在我们在第二次行动中 对于许多验证消息,我想使用分页。这里有同样的问题-用户点击下一页按钮,我们进

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

  • 在将数据保存到数据库之前,在何处保存数据?假设用户没有看到验证消息。他点击SaveData按钮。我们执行了一些操作,但其中没有文件中的数据。我们无法从数据库中提取数据,因为它也不在那里。我们在第一次行动中访问了数据,但现在我们在第二次行动中
  • 对于许多验证消息,我想使用分页。这里有同样的问题-用户点击下一页按钮,我们进入一个动作。我们没有excel中的任何数据
  • 我应该将数据保存在ViewBag中吗?阿贾克斯能帮我吗?我忘了一件事——我可以在一个excel文件(1000+)中有许多行。我使用gridmvc来表示数据
  • 谢谢你的帮助


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

    如果我在您所在的位置-我会将excel上传到服务器,验证它并

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

  • 如果验证成功-将文件上载到db,无需额外确认

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

    在某些情况下,您可以将验证列添加到用户的excel中。但我不确定这是否对用户更有用。

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

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

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


    希望这能有所帮助。

    如果验证失败,但用户单击“保存”,该怎么办?在这种情况下,用户将无法访问SaveButton。他可以更正excel文件并尝试再次使用它。我不能将无效数据插入数据库-这就是我使用验证的原因。你说“假设用户看不到验证消息,他单击了SaveData按钮”是什么意思?我问这个问题是因为你说“用户将无法访问SaveButton”如果无法访问该按钮,用户如何单击该按钮?请尝试使用一个进程来读取并验证excel,如果某行有无效数据,请停止该按钮,并显示错误消息,如果没有任何错误,则可以显示“保存”按钮。我需要在页面上的表中显示验证消息,并使用分页。我不能只返回带有日志的文本文件。在这种情况下,您可以在不进行验证的情况下将这些数据保存到某个中间表中,并允许用户修复表单上的问题。但通常,如果您的用户想要将excel文件加载到您的系统中,他不想在您的界面中工作,也不想在您的界面中读取验证消息。您知道。。。我改变主意了。导入选项专用于管理员(在我的应用程序中)-他可以处理文本文件日志,并查看数据发生了什么。我将把文本文件返回给用户。