我有一个连接到MVC 4项目的数据库。 数据库是从这段代码自动创建的:
public class ContextInitializer : DropCreateDatabaseIfModelChanges<ContextModel>
{
protected override void Seed(ContextModel context)
{
base.Seed(context);
}
}
我看到人们在删除后重新启动数据库并使用以下代码重新创建:
System.Data.Entity.Database.SetInitializer(new CarStore.Models.SampleData.cs);
这有效。但我的问题是:
第一。如何从SQL文件中获取数据,我有SampleData.sql,以及如何“运行”该文件以插回所有数据。
和第二种方法是在DropAndCreateIfModelChanges之前从数据库数据中将BackUp设置为最新版本吗? 然后从该文件中播放该数据?
感谢。
答案 0 :(得分:0)
我得到答案:)
我终于设法解决了这个问题。
这是代码,也许有人需要它!
var baseDirectory = AppDomain.CurrentDomain.BaseDirectory;
context.Database.ExecuteSqlCommand(File.ReadAllText(baseDirectory +
"\\IF YOU HAVE ANOTHER DIRECTOR INSIDE BASEDIR \\SQL" + "\\YOURFILENAME.sql"));
它非常适合我。 它是优化和可读的。