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