0

我有一个正在开发的 ASP.net (C#) 应用程序。在应用程序中,需要填写和提交多页表单字段。最后一页的底部是一个提交按钮,它将所有内容写入数据库。将这些字段从表单写入数据库的代码非常复杂,因为调用了大约 30 个不同的存储过程。当用户单击一个名为“复制”的新按钮时,我试图创建一个副本,该按钮应该在数据库中存储一个副本。我尝试从“提交”按钮复制粘贴代码以写入数据库,但我遇到了很多问题。我尝试了很多不同的方法,例如将提交按钮的代码粘贴到新方法中,并从“复制”按钮调用该方法,但这种方法不起作用。所以,我对是否有更简单的方法来复制存储在数据库中的提交副本感到困惑。通常几个 SQL 语句可以工作,但在这种情况下,大约有 35 个存储过程、70 个 SQL 表和 425 个列,这是一个问题。

所以基本上问题的总结是:

我有一个表单,在提交时,将填写的字段写入数据库中的各个位置,具体取决于字段是什么。

我想创建一个“复制”按钮,复制表单的数据库存储字段,创建一个副本。

问题:正如我所说,大约有 215 个表单域和 70 个 SQL 表,每个表单域进入表中的某个列。

4

1 回答 1

0

我将通过创建一个直接在数据库中进行复制的存储过程来解决这个问题。然后你可以让你的“复制”按钮调用新的存储过程,它创建副本并返回一些句柄(为副本创建的一些基本 id 值)并使用句柄将复制的版本加载到应用程序中。确保在事务中运行复制,这样您要么获得完整的副本以提交,要么在发生错误时回滚。

于 2012-06-07T10:35:07.940 回答