接下来我将详细讲解“Entity Framework Core使用控制台程序生成数据库表”的完整攻略。
前置要求
首先,我们需要确保计算机中安装了以下软件:
- Visual Studio 2019(或更新版本)
- .NET Core SDK(3.1 或更新版本)
步骤
- 新建控制台程序项目
在 Visual Studio 中新建一个控制台程序项目。
- 安装 Entity Framework Core
在 Package Manager Console 中执行以下命令:
Install-Package Microsoft.EntityFrameworkCore
- 配置连接字符串
在 appsettings.json 文件中添加数据库连接字符串,例如:
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=MyDatabase;Trusted_Connection=True;MultipleActiveResultSets=true"
}
}
- 创建数据模型
在 Models 文件夹中创建一个数据模型类,例如:
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public decimal Price { get; set; }
}
- 创建数据库上下文
在 Data 文件夹中创建一个数据库上下文类,并在其中添加数据模型类的 DbSet 属性,例如:
public class DataContext : DbContext
{
public DataContext(DbContextOptions<DataContext> options)
: base(options)
{
}
public DbSet<Product> Products { get; set; }
}
- 创建数据库
在 Program.cs 文件中添加以下代码:
using (var db = new DataContext(
new DbContextOptionsBuilder<DataContext>()
.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"))
.Options))
{
db.Database.EnsureCreated();
}
其中,使用 UseSqlServer 方法配置数据库提供程序和连接字符串,调用 EnsureCreated 方法创建数据库(如果不存在)和相关表。
- 运行程序
现在,我们可以运行程序,并在数据库中查看生成的表。
示例说明
以下是两个示例说明。
示例 1:生成单个表
在数据模型类中添加另一个属性,例如:
public int Quantity { get; set; }
重新运行程序,将生成一个包含 4 个列的表。
示例 2:生成多个表
在数据模型类中添加另一个类的属性,例如:
public Supplier Supplier { get; set; }
在 Models 文件夹中创建一个供应商类,例如:
public class Supplier
{
public int Id { get; set; }
public string Name { get; set; }
}
重新运行程序,将生成两个表。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Entity Framework Core使用控制台程序生成数据库表 - Python技术站