以.net framework為例,包括數據庫管理類庫和啟動項目兩個項目文件
數據庫管理類庫
新建一個類庫,名稱為XXX.Database
管理nuget包,引入庫EntityFramework 6.2.0
創建表
public class Student
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
}
創建DbContext,設置nameOrConnectionString為"YourDatabase"
public class YourDbContext: DbContext
{
public DbSet<Student> Students { get; set; }
public YourDbContext(): base("YourDatabase")
{
}
}
啟動項目
這里啟動項為一個控制台程序,同樣添加EntityFramework 6.2.0
在App.config文件中添加連接字符串,注意,名稱為"YourDatabase"
這里是Sql Server數據庫的連接字符串
<configuration>
<connectionStrings>
<add name="YourDatabase" providerName="System.Data.SqlClient" connectionString="Data Source=YourIp;Initial Catalog=XXXDb;User Id=userId;Password=password;"/>
</connectionStrings>
</configuration>
其中providerName的名稱,和App.config中的provider對應,后者是引入EntityFramework的時候自動添加的
至此,兩個項目均可識別EntityFramework,添加了數據庫上下文、數據庫表、連接字符串,可以開始遷庫
遷庫
打開包管理控制台(Package Manager Console),設置默認程序(Default project)為XXX.Database,啟動項為上述的控制台程序
首先,允許遷庫
Enable-Migrations
會自動生成Migrations文件夾及相關文件
然后創建遷移文件
add-migration add_Student_table
執行更新
update-database
使用
查詢
using (var dbContext = new YourDbContext())
{
var s = dbContext.Students.FirstOrDefault(x => x.Id == 1);
}
其他不再贅述