C# 如何在实体框架中删除和重新创建表

C# 如何在实体框架中删除和重新创建表,c#,asp.net,sql,asp.net-mvc-3,entity-framework,C#,Asp.net,Sql,Asp.net Mvc 3,Entity Framework,在我的Global.asax文件中,在我的ApplicationStart()函数下,我想删除一个表,并在应用程序启动时干净地重新创建它。实现这一点的最佳方法是什么,以便在每次启动程序时都能实现无缝连接?为了获得更好的想法,我在一个表中跟踪在线用户,但是当应用程序再次启动时,显然我想清除这个表。我需要删除并重新创建该表,因为如果我简单地截断它,标识种子将不会重新启动(我使用的是sql azure,因此无法运行db命令来重置种子)。另外,如果我只是截断了我的表,重置种子不是一种糟糕的做法吗?我已经

在我的
Global.asax
文件中,在我的
ApplicationStart()
函数下,我想删除一个表,并在应用程序启动时干净地重新创建它。实现这一点的最佳方法是什么,以便在每次启动程序时都能实现无缝连接?为了获得更好的想法,我在一个表中跟踪在线用户,但是当应用程序再次启动时,显然我想清除这个表。我需要删除并重新创建该表,因为如果我简单地截断它,标识种子将不会重新启动(我使用的是sql azure,因此无法运行db命令来重置种子)。另外,如果我只是截断了我的表,重置种子不是一种糟糕的做法吗?我已经这样做了,在测试之后,我的id已经达到了1000。

您可以使用ExecuteStoreCommand方法执行一个普通的SQL TRUNCATE命令。
就像这样
dbContext.ExecuteStoreCommand(“TRUNCATE TABLE myTable”)。Truncate从表中删除所有记录并重置自动id的种子。

您可以使用EXECUTESTORECOMD方法执行常规SQL Truncate命令。
就像这样
dbContext.ExecuteStoreCommand(“TRUNCATE TABLE myTable”)。Truncate从表中删除所有记录,并重置自动id的种子。

这可能会有所帮助:如果不需要按顺序编号实际id,则不重置种子不会是一个坏做法。如果担心ID不足,可以增加字段长度或使用GUID字段。实际上,SQL
TRUNCATE TABLE
命令会重置标识列的种子。是
中删除而不是删除。可以显示清除表的当前代码吗?这可能会有所帮助:如果不需要按顺序编号实际ID,则不重置种子不会是一个坏做法。如果担心ID不足,可以增加字段长度或使用GUID字段。实际上,SQL
TRUNCATE TABLE
命令会重置标识列的种子。是
中删除而不是删除。您能否显示清除表格的当前代码?