假设我有一个ASP.NET注册向导。当单击“下一步”时,每个步骤收集的信息被临时存储在数据库表中。现在假设用户关闭了浏览器窗口,或者计算机意外关闭。因此,应用程序应该删除所有临时注册信息。怎么可能做到呢?
附加信息:我不能使用不能使用会话对象,因为应用程序是从网络场提供服务的。
我已经考虑过使用存储过程来清理表。但是想要找出其他的可能性。
发布于 2012-08-19 14:17:56
不要简单地将不完整数据存储到db中。改为使用会话作为临时存储。它不仅提供了更好的性能(避免了db命中),而且还完全避免了像您这样的问题。仅在输入所有必要信息后才将其存储到数据库。
发布于 2012-08-19 14:18:10
在这种情况下,您可以为每个会话/尝试分配一个临时注册id。如果窗口关闭,下一次尝试将是新的,应用程序应该每晚运行一个清理作业,以删除未完成的尝试。
https://stackoverflow.com/questions/12027169
复制