EF框架在net中的用法

Entity Framework(EF)是一个流行的对象关系映射(ORM)框架,它允许开发人员通过使用对象模型来访问和操作数据库。在 .NET 5 中,EF 框架有一些新特性和改进。下面是 EF 框架在 .NET 5 中的详细用法:

安装 Entity Framework Core:在 .NET 5 中,EF 核心已经合并到了 .NET Core 中,所以你只需要引用 Microsoft.EntityFrameworkCore 包即可。

创建数据模型:使用 C# 类来表示数据库表和关系。你可以使用注解或 Fluent API 来定义实体之间的关系、主键、外键等。例如:

public class Product
{
    public int Id { get; set; }
    public string Name { get; set; }
    public decimal Price { get; set; }
}

创建数据库上下文:数据库上下文是 EF 框架与数据库之间的桥梁。你需要创建一个继承自 DbContext 的类,并将你的实体类集合作为属性添加到上下文中。例如:

public class MyDbContext : DbContext
{
    public DbSet<Product> Products { get; set; }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        // 配置数据库连接
        optionsBuilder.UseSqlServer("your_connection_string");
    }
}

进行数据库迁移:EF 框架使用迁移来创建和更新数据库架构。你可以使用 dotnet ef 命令行工具来执行迁移操作。例如:

bash
dotnet ef migrations add InitialCreate
dotnet ef database update

使用 EF 进行数据访问:你可以在应用程序中使用上下文来查询和操作数据库。例如:


//依赖注入方式
public class AppServiceTest{
	private readonly MyDbContext _context;
        public AppServiceTest( 
            MyDbContext context) 
        { 
            this._context = context;
        }
	public dynamic get(){
		var products = _context.Products.ToList();
    	// 查询所有产品

    	var product = _context.Products.FirstOrDefault(p => p.Name == "Product 1");
    	// 查询名称为 "Product 1" 的产品
	}
}

//或者实例化对象

using (var context = new MyDbContext())
{
    var products = context.Products.ToList();
    // 查询所有产品

    var product = context.Products.FirstOrDefault(p => p.Name == "Product 1");
    // 查询名称为 "Product 1" 的产品
}

这些是 EF 在 .NET 5 中的一些基本用法。你可以进一步探索 EF 框架的高级功能,如数据关系、数据迁移、查询等。官方文档提供了更详细的用法和示例,你可以参考官方文档进行更深入的学习和实践。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

香煎三文鱼

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值