0

我想做的是给用户一个临时数据库表,他们在填写表格时保存到该表(以保存他们在请求之间的更改)。我想知道最好的方法来做到这一点。目前我正在做以下事情:

Random rand = new Random(2000000);


object UserID = Session["TestID"];
if (UserID == null)
{
    // Session["TestID"] = HttpContext.Session.SessionID;
    UserID = rand.Next();
    Session["TestID"] = UserID;
}
else
{
     UserID = Session["TestID"];
}

并在数据库中使用此 UserID 创建表,但我 99% 确定这很糟糕。有什么建议么?谢谢。

编辑: 我只是想将用户对表单所做的更改保存到临时表中,以便他们可以在页面之间来回跳转并仍然保留他们的信息。我认为唯一的方法是为用户创建一个具有唯一 id 的表,用于存储他们的临时表单数据,直到他们准备好提交最终版本。这不是在请求之间存储数据的好方法吗?

4

2 回答 2

0

使用 GUID。这是“几乎”独一无二的。随机可能会导致两次相同的值。

http://msdn.microsoft.com/en-us/library/system.guid.aspx

于 2013-05-29T15:29:28.800 回答
0

每个表的架构是否相同?如果是这样,那么为什么不对所有用户使用同一张表呢?您可以使用用户的会话 ID 作为密钥。

于 2013-05-29T15:30:36.023 回答