.net framework4.7.2 使用EF6 DbContext 创建 Sqlite 数据库和多张数据表
时间: 2024-02-03 14:04:16 浏览: 151
数据库Sqlite
要在 .NET Framework 4.7.2 使用 EF6 DbContext 创建 SQLite 数据库和多张数据表,您可以按照以下步骤操作:
1. 安装 SQLite 数据库引擎和 ADO.NET 数据提供程序。您可以从 SQLite 官网下载 SQLite 数据库引擎和 ADO.NET 数据提供程序的安装文件,然后按照提示进行安装。
2. 在 Visual Studio 中创建一个新的 .NET Framework 项目,选择“类库”作为项目类型。
3. 在“解决方案资源管理器”中,右键单击项目名称,选择“管理 NuGet 程序包”。
4. 在“NuGet 包管理器”中搜索并安装以下两个包:
- EntityFramework
- System.Data.SQLite
5. 在项目中添加一个新的类文件,命名为“MyDbContext.cs”。
6. 在“MyDbContext.cs”文件中,定义一个继承自“DbContext”的类,并添加以下代码:
```csharp
using System.Data.Entity;
public class MyDbContext : DbContext
{
public MyDbContext() : base("name=MyDbContext")
{
}
public DbSet<Table1> Table1 { get; set; }
public DbSet<Table2> Table2 { get; set; }
}
```
在上面的代码中,“Table1”和“Table2”是您需要创建的数据表的实体类,它们应该与数据库中的表对应。
7. 创建实体类“Table1.cs”和“Table2.cs”,并在其中定义数据表的结构。例如:
```csharp
public class Table1
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
}
```
在上面的代码中,“Id”是主键,它会自动递增,您可以添加其他属性。
8. 在“App.config”文件中添加以下配置:
```xml
<configuration>
<connectionStrings>
<add name="MyDbContext" connectionString="Data Source=MyDatabase.sqlite" providerName="System.Data.SQLite" />
</connectionStrings>
</configuration>
```
在上面的配置中,“MyDatabase.sqlite”是您要创建的 SQLite 数据库的名称。
9. 在“Program.cs”文件中添加以下代码,以创建数据库并初始化数据表:
```csharp
using System.Data.Entity;
class Program
{
static void Main(string[] args)
{
Database.SetInitializer<MyDbContext>(new CreateDatabaseIfNotExists<MyDbContext>());
using (var context = new MyDbContext())
{
context.Database.Initialize(false);
}
}
}
```
在上面的代码中,“SetInitializer”方法设置了数据表的初始化策略,这里我们使用“CreateDatabaseIfNotExists”策略,表示如果数据库不存在,则创建一个新的数据库。然后,通过“Initialize”方法初始化数据库和数据表。
10. 运行程序,您应该能够在 SQLite 数据库中看到创建的数据表。
以上就是在 .NET Framework 4.7.2 中使用 EF6 DbContext 创建 SQLite 数据库和多张数据表的步骤。
阅读全文