EF 3个实体类如何创建数据库帮助类
时间: 2023-08-11 22:13:21 浏览: 48
如果你使用的是 EF Core,可以使用以下步骤创建数据库帮助类:
1. 在项目中添加 Microsoft.EntityFrameworkCore 和 Microsoft.EntityFrameworkCore.Design 包。
2. 创建一个继承 DbContext 的类,该类包含用于表示数据库中表的 DbSet 属性。例如:
```csharp
using Microsoft.EntityFrameworkCore;
public class MyDbContext : DbContext
{
public DbSet<User> Users { get; set; }
public DbSet<Order> Orders { get; set; }
public DbSet<Product> Products { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("YourConnectionString");
}
}
```
3. 在项目根目录下创建一个包含 DbContext 类的文件夹(例如 Data),并在其中创建一个继承 IDesignTimeDbContextFactory 的类。例如:
```csharp
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Design;
using Microsoft.Extensions.Configuration;
using System.IO;
namespace YourProject.Data
{
public class MyDbContextFactory : IDesignTimeDbContextFactory<MyDbContext>
{
public MyDbContext CreateDbContext(string[] args)
{
IConfigurationRoot configuration = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json")
.Build();
var builder = new DbContextOptionsBuilder<MyDbContext>();
var connectionString = configuration.GetConnectionString("MyDbContext");
builder.UseSqlServer(connectionString);
return new MyDbContext(builder.Options);
}
}
}
```
这个类的作用是为 EF Core 命令行工具提供 DbContext 实例以便进行数据库迁移操作。在这个类中,我们从 appsettings.json 文件中获取数据库连接字符串,并使用它来配置 DbContext。
4. 在项目的 appsettings.json 文件中添加数据库连接字符串。例如:
```json
{
"ConnectionStrings": {
"MyDbContext": "YourConnectionString"
}
}
```
这样,我们就创建了一个使用 EF Core 的数据库帮助类。你可以使用 MyDbContext 类来执行各种数据库操作,例如查询、插入、更新和删除。