ef開發模式有3種:DateBase First(數據庫優先)、Model First(模型優先)和Code First(代碼優先)。這裏我用的是code first 一個簡單的例子:數據庫
public class BloggingContext : DbContext { public BloggingContext() : base("name=testConn") { } public DbSet<Person> Blogs { get; set; } public DbSet<DepartPerson> Posts { get; set; } } class Program { static void Main(string[] args) {//模型改變從新建立數據庫 Database.SetInitializer(new DropCreateDatabaseIfModelChanges<BloggingContext>()); using (var db = new BloggingContext()) { Person blog = new Person() { Name = "zhangsan", Age = "29", ID = Guid.NewGuid().ToString().Replace("-", "") }; db.Blogs.Add(blog); db.SaveChanges(); foreach (var item in db.Blogs) { Console.WriteLine("Name:" + item.Name); } } Console.Read(); }
簡單介紹一下Database.SetInitializer方法ui
一:數據庫不存在時從新建立數據庫
spa
三:模型更改時從新建立數據庫調試
四:從不建立數據庫code
這對這幾種方式,能夠經過代碼作出改動,而後調試一下觀察一下數據庫的變化,會理解的更透徹!blog