net framework4.7.2框架 使用EF DbContext 创建 Sqlite 数据库和数据表
时间: 2024-02-03 14:03:47 浏览: 143
以下是使用 EF DbContext 创建 Sqlite 数据库和数据表的步骤:
1. 安装EntityFrameworkCore.Sqlite NuGet包
在 Visual Studio 中打开 NuGet 包管理器控制台,运行以下命令:
```
Install-Package Microsoft.EntityFrameworkCore.Sqlite
```
2. 创建 DbContext
创建一个继承自 DbContext 的类,并在构造函数中指定 Sqlite 数据库的连接字符串。例如:
```csharp
public class MyDbContext : DbContext
{
public DbSet<MyEntity> MyEntities { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlite("Data Source=mydatabase.db");
}
}
```
其中,`MyEntity` 是要映射到数据库的实体类。
3. 创建数据表
在 `MyDbContext` 中添加 `OnModelCreating` 方法,并在该方法中使用 Fluent API 创建数据表。例如:
```csharp
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<MyEntity>()
.HasKey(e => e.Id);
}
```
其中,`Id` 是 `MyEntity` 类的主键属性。
4. 创建数据库
在程序启动时,可以调用 `MyDbContext` 的 `Database.EnsureCreated()` 方法来创建数据库和数据表。例如:
```csharp
using (var context = new MyDbContext())
{
context.Database.EnsureCreated();
}
```
注意:`EnsureCreated()` 方法只会创建数据库和数据表,不会执行任何迁移操作。如果需要执行迁移操作,请使用 EF Core 的迁移功能。
阅读全文