1、首先创建一个.net Core的项目,
2、引用依赖包
Microsoft.EntityFrameworkCore.SqlServer;
Microsoft.EntityFrameworkCore;
Microsoft.EntityFrameworkCore.Design;
Microsoft.EntityFrameworkCore.Tools;
3、然后在配置文件中添加一个数据库连接
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"ConnectionStrings": {
"DefaultConnection": "Data Source=.; Database=TableName; User ID=sa; Password=123456; MultipleActiveResultSets=True"
},
"AllowedHosts": "*"
}
4、添加上下文
image.png
public class User
{
[Key]
public int ID { get; set; }
[Required]
public string UserName { get; set; }
[Required]
public string Password { get; set; }
public string Email { get; set; }
public string Phone { get; set; }
[Required]
public DateTime AddTime { get; set; }
}
public class TestContext:DbContext
{
public TestContext(DbContextOptions<TestContext> options) : base(options) { }
public DbSet<User> User { get; set; }
protected override void OnModelCreating(ModelBuilder builder)
{
}
}
5、在启动项中配置数据库迁移
public static void Main(string[] args)
{
var host = CreateHostBuilder(args).Build();
//数据库迁移
using (var serviceScope = host.Services.CreateScope())
{
var context = serviceScope.ServiceProvider.GetRequiredService<HPCContext>();
context.Database.Migrate();
}
host.Run();
}
在ConfigureServices中添加
public void ConfigureServices(IServiceCollection services)
{
services.AddControllersWithViews();
// ef core
services.AddDbContext<HPCContext>(options =>
{
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"));
});
}
6、执行命令,生成迁移记录,在程序包管理控制台或cmd。
add-migration inital
image.png
image.png
7、
update-database 添加一个迁移文件成功后,可以用该命令直接更新到数据库,默认是所有迁移。
或者是直接运行项目也可以,运行项目按照更新最新的迁移记录更新。