0
启用迁移和更新数据库我正在使用实体框架代码第一种方法,并具有以下模型和数据库上下文。我可以使用代码
public class Patient
{
public int Id { get; set; }
public string FirstName { get; set; }
}
public class PatientContext:DbContext
{
public DbSet<Patient> Persons { get; set; }
}
我们在数据库中创建的模型,我要运行Enable Migration
,如果任何变化,然后在使用包管理器控制台运行Update database
。
但有没有什么办法可以做到这一点使用代码。因此,当有人运行控制台应用程序时,它将创建所有表模式。
class Program
{
static void Main(string[] args)
{
//Code to Create my tables
//Something similar to enable migration and update database
}
}
我可以有主要的应用程序内创造了一个纪录,这将创建表结构,但创造一个记录创建表结构似乎是多余的。此外,如果有任何模式更改,以下代码将引发异常。
有没有更好的方法?
static void Main(string[] args)
{
using (PatientContext pcontext = new DatabaseMigApp.PatientContext())
{
pcontext.Patients.Add(new Patient() { FirstName = "Steve",Id = 1});
pcontext.SaveChanges();
}
}
见https://romiller.com/2012/02/09/running-scripting-migrations-from-code/ –