ASP.NET Core+EF Core自动生成数据库结构

1.安装NuGet包

Install-Package Microsoft.EntityFrameworkCore
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.EntityFrameworkCore.Design
Install-Package Microsoft.EntityFrameworkCore.SqlServer

2.添加模型类

using System.ComponentModel.DataAnnotations;
namespace MigrateWebApi.Models
{
    public class User
    {
        [Key]
        public long Id { get; set; }
        [MaxLength(16)]
        public string? Name { get; set; }
        [MaxLength(32)]
        public string? Tel { get; set; }
        [MaxLength(64)]
        public string? Openid { get; set; }
        public DateTime? RegisterDate { get; set; }
    }
}

3.添加数据库上下文类

#nullable disable
using Microsoft.EntityFrameworkCore;
using MigrateWebApi.Models;
namespace MigrateWebApi.Data
{
    public class MyDbContext : DbContext
    {
        public MyDbContext(DbContextOptions options) : base(options) { }
        public DbSet Users { get; set; }//此变量名关联表名
    }
}

4.添加数据库连接字符串到appsettings.json

"ConnectionStrings": {
    "localdb": "Server=(localdb)\\mssqllocaldb;Database=Test;Trusted_Connection=True;MultipleActiveResultSets=true"
  }

Server=(localdb)\\mssqllocaldb:指定使用SQL Server LocalDB,它是只在 Windows 上运行的一种 SQL Server Express 版本。

Database=Test:关联数据库名称。

5.在Program.cs中注册数据库上下文

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddDbContext(options => options.UseSqlServer(builder.Configuration.GetConnectionString("localdb")));
var app = builder.Build();

6.执行迁移

Add-Migration InitialCreate
Update-Database

Add-Migration InitialCreate:添加迁移计划,InitialCreate为计划名称。执行成功将生成Migrations/20220308041128_InitialCreate.cs和Migrations/MyDbContextModelSnapshot.cs。

Update-Database:执行迁移。

7.查看结果

ASP.NET Core+EF Core自动生成数据库结构_第1张图片

你可能感兴趣的:(C#,c#,asp.net,core,ef,core,sql,localdb,code,first)