我的ASP.NET MVC 4 Code First应用程序使用迁移创建种子数据 - 效果很好。
随着时间的推移,我自己输入的其他测试数据会逐渐增加。
删除此测试数据并返回种子数据的最快方法是什么?
我不希望每次运行应用程序时都重新创建数据库。
由于
答案 0 :(得分:1)
最快捷的方法是删除数据库中的所有数据,并在DbContextInitializer上调用Seed函数。
删除SQL Server中的所有数据就像
一样简单EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
GO
EXEC sp_MSForEachTable 'DELETE FROM ?'
GO
EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
GO
在更高的杠杆上,有不同的数据库初始化程序可用。
开箱即用,您可以使用以下内容。
根据您的要求切换初始化程序。通常我会在global.asax文件中执行此操作。