此文章为读Code-First develoment with entity framework简单笔记。
1.首先我们创建一个Person类
public class Person { public int PersonId { get; set; } public string FirstName { get; set; } public string LastName { get; set; } }
接着创建Context类,该类继承于DbContext类
public class Context:DbContext { public Context() : base("ConnectionString") { } public DbSet<Person> People { get; set; } }
注意base(“ConnectionString”)需要配置链接字符串,否则EF会使用默认连接设置。
<connectionStrings> <add name="ConnectionString" connectionString="data source=192.168.0.14;initial catalog=EfSample;user id=sa;password=" providerName="System.Data.SqlClient"/> </connectionStrings>
使用下面代码,如果数据库不存在,那么会在数据创建数据
static void Main(string[] args) { using(var context=new Context()) { bool temp= context.Database.CreateIfNotExists(); if (temp) { Console.WriteLine("创建成功!"); } else { Console.WriteLine("创建失败!"); } } Console.ReadKey(); }
运行本段代码后你会发现在数据库中创建了名为”EfSample”的数据库,这个数据库名称就是刚刚在配置文件中设置连接字符串的数据库名。
2.增加一条记录到我们创建的数据库
class Program { static void Main(string[] args) { using(var context=new Context()) { bool temp= context.Database.CreateIfNotExists(); var person = new Person { FirstName = "John", LastName = "Doe" }; context.People.Add(person); context.SaveChanges(); } Console.ReadKey(); } }
使用这段代码会发现在数据库中创建了People表,并增加了一条记录,EF为自动判断数据库中是否有People表(表名根据Context类中定义的public DbSet<Person> People { get; set; }属性名称)。我们也可以映射自己已经创建好的表,在后面会讲到。在这段代码中你为发现我们并没有给PersonId赋值,EF会自动把+Id名称的自动设置为表主键。
时间: 2024-10-12 05:37:25