Entity Framework Core (EF Core)是一个开源的、轻量级的、可扩展的.NET数据访问技术,用于在.NET应用程序中工作于数据库。Code First是EF Core中的一种开发方法,它允许开发者先编写C#类(即实体类),然后基于这些类生成数据库架构。
安装 EF Core
首先,你需要通过NuGet包管理器安装EF Core。在Visual Studio中,你可以通过以下步骤进行安装:
- 打开“解决方案资源管理器”。
- 右键点击你的项目,选择“管理NuGet包”。
- 在“浏览”标签中,搜索“Microsoft.EntityFrameworkCore”,然后选择合适的版本进行安装。
定义实体类
使用POCO(Plain Old CLR Object)类来表示数据库中的表。每个实体类对应一个数据库表,实体类的属性对应表的列。
public class Blog
{
public int BlogId { get; set; }
public string Url { get; set; }
public virtual List<Post> Posts { get; set; }
}
public class Post
{
public int PostId { get; set; }
public string Title { get; set; }
public string Content { get; set; }
public int BlogId { get; set; }
public virtual Blog Blog { get; set; }
}
配置 DbContext
DbContext是EF Core中的核心类,它代表了与数据库的会话。你需要创建一个继承自DbContext的类,并在其中配置数据库连接字符串以及定义DbSet属性来映射实体类到数据库表。
public class BloggingContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
public DbSet<Post> Posts { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("YourConnectionStringHere");
}
}
数据库迁移
EF Core提供了数据库迁移功能,允许你跟踪和应用模型更改到数据库的变更。
- 添加迁移:在Package Manager Console中运行Add-Migration InitialCreate。
- 更新数据库:在Package Manager Console中运行Update-Database。
CRUD操作
使用EF Core进行数据操作非常简单。以下是基本的CRUD(创建、读取、更新、删除)示例:
// 创建(添加)
using (var context = new BloggingContext())
{
var blog = new Blog { Url = "http://sampleblog.com" };
context.Blogs.Add(blog);
context.SaveChanges();
}
// 读取
using (var context = new BloggingContext())
{
var blogs = context.Blogs.ToList();
}
// 更新
using (var context = new BloggingContext())
{
var blog = context.Blogs.FirstOrDefault(b => b.BlogId == 1);
if (blog != null)
{
blog.Url = "http://updatedblog.com";
context.SaveChanges();
}
}
// 删除
using (var context = new BloggingContext())
{
var blog = new Blog { BlogId = 1 };
context.Blogs.Remove(blog);
context.SaveChanges();
}
总结
EF Core Code First是一个非常强大的ORM(对象关系映射)工具,它简化了数据库的开发和维护。通过Code First方法,你可以专注于业务逻辑的实现,而不必担心数据库的细节。随着对EF Core的深入学习,你将能够更有效地利用其强大的功能来构建数据驱动的应用程序。
本文暂时没有评论,来添加一个吧(●'◡'●)