C#的Entity Framework Core是什么?如何用它进行数据库操作?

来源:这里教程网 时间:2026-02-21 17:31:04 作者:

Entity Framework Core(简称 EF Core) 是微软为 C# 开发者提供的一个轻量级、可扩展的 ORM(对象关系映射)框架。它允许你用面向对象的方式操作数据库,无需直接写 SQL 语句,就能实现数据的增删改查。

简单来说,你可以把数据库表看作是 C# 中的类,表中的记录就是类的实例。EF Core 负责在对象和数据库之间自动转换数据。

基本使用步骤

要使用 EF Core 操作数据库,通常需要以下几个步骤: 安装 NuGet 包:在项目中安装对应数据库的 EF Core 提供程序,比如 SQL Server 使用
Microsoft.EntityFrameworkCore.SqlServer
,SQLite 使用
Microsoft.EntityFrameworkCore.Sqlite
等。
定义实体类:创建与数据库表对应的 C# 类。例如:
public class User
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Email { get; set; }
}
创建 DbContext 子类:这是 EF Core 的核心类,用来管理数据库连接和实体集合。
public class AppDbContext : DbContext
{
    public DbSet<User> Users { get; set; }
<pre class="brush:php;toolbar:false;">protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
    optionsBuilder.UseSqlServer("你的连接字符串");
}

}

进行数据库操作:通过上下文实例操作数据。

常见数据库操作示例

假设你已经配置好

AppDbContext
,下面是一些常用操作:

添加数据

using var db = new AppDbContext();
var user = new User { Name = "张三", Email = "zhangsan@example.com" };
db.Users.Add(user);
db.SaveChanges();

查询数据

using var db = new AppDbContext();
var users = db.Users.ToList(); // 获取所有用户
var user = db.Users.FirstOrDefault(u => u.Id == 1); // 查找特定用户

更新数据

using var db = new AppDbContext();
var user = db.Users.Find(1);
if (user != null)
{
    user.Name = "李四";
    db.SaveChanges();
}

删除数据

using var db = new AppDbContext();
var user = db.Users.Find(1);
if (user != null)
{
    db.Users.Remove(user);
    db.SaveChanges();
}

使用迁移(Migrations)创建和更新数据库

EF Core 支持通过代码生成数据库结构。你不需要手动建表。在 Visual Studio 的包管理器控制台中运行命令:

Add-Migration InitialCreate
—— 创建一个迁移快照
Update-Database
—— 将变更应用到数据库

之后每次修改实体类,都可以添加新的迁移来更新数据库结构。

小结

EF Core 让 C# 开发者可以用更自然的方式操作数据库。你只需关注业务模型(实体类),EF Core 会处理底层的数据访问逻辑。配合迁移功能,还能实现数据库版本控制,提升开发效率。

基本上就这些,上手不难但功能强大。

相关推荐

热文推荐