【发布时间】:2012-09-13 22:10:43
【问题描述】:
在我的Global.asax 文件中,在我的ApplicationStart() 函数下,我想删除一个表并在应用程序启动时干净地重新创建它。完成此操作的最佳方法是什么,以便每次启动程序时都能无缝?为了更好地了解,我在一个表中跟踪在线用户,但是当应用程序再次启动时,显然我想清除这个表。我需要删除并重新创建表,因为如果我只是截断它,身份种子将不会重新开始(我使用的是 sql azure,所以我无法运行 db 命令来重置种子)。另外,如果我只是截断了我的表格,那么重置种子不是一个坏习惯吗?我已经这样做了,我已经在 id 1000 了,就在测试之后。
【问题讨论】:
-
如果您不需要对实际 ID 进行顺序编号,那么不重置种子根本不是一个坏习惯。如果您担心 ID 会用完,您可以增加字段长度或使用 GUID 字段。
-
实际上 SQL
TRUNCATE TABLE命令确实会重置标识列的种子。DELETE FROM没有。你能显示你当前清除表格的代码吗?
标签: c# asp.net sql asp.net-mvc-3 entity-framework