随笔分类 - 15-EF Core
摘要:EF中的事务主要分为三类,分别是SaveChanges、DbContextTransaction、TransactionScope。 SaveChanges SaveChanges一次性将本地缓存中所有的状态变化一次性提交到数据库,这就是一个事务,要么统一成功,要么统一回滚。 使用场景:一个DBCo
阅读全文
摘要:EF.Functions是EF Core提供的函数功能,如下 using Microsoft.EntityFrameworkCore; EF.Functions.Like(); EF.Functions.Contains(); EF.Functions.DateDiffDay(); EF.Funct
阅读全文
摘要:实体状态 已添加(Added):DbContext正在跟踪此实体,但数据库中尚不存在该实体。 未改变(Unchanged):DbContext正在跟踪此实体,该实体存在于数据库中,其属性值和从数据库中读取到的值一致,未发生改变。 已修改(Modified):DbContext正在跟踪此实体,并存在于
阅读全文
摘要:DBContext实例化的4种方式 (1). ConfigureService中注入,然后在控制器注入上下文即可。 services.AddDbContext<YpfDbContext>(option => option.UseSqlServer(Configuration.GetConnectio
阅读全文
摘要:悲观锁 EF Core没有封装悲观并发控制的使用,需要开发人员编写原生SQL语句来使用悲观并发控制。不同数据库的语法不一样。 Console.WriteLine("请输入您的姓名"); string name = Console.ReadLine(); using MyDbContext ctx =
阅读全文
摘要:EF Core中实体之间关系的配置的套路: HasXXX(…).WithXXX(…); XXX可选值One、Many。 一对多:HasOne(…).WithMany(…); 也可以配置多对一:HasMany(…).WithOne(…); 一对一:HasOne(…).WithOne (…); 多对多:
阅读全文
摘要:Fluent API 视图与实体类映射 modelBuilder.Entity<Blog>().ToView("blogsView"); 排除属性映射 modelBuilder.Entity<Blog>().Ignore(b => b.Name2); 配置列名 modelBuilder.Entity
阅读全文
摘要:插入 using (TestDbContext ctx = new TestDbContext()) { var b1 = new Book { AuthorName = "杨中科", Title = "零基础趣学C语言", Price = 59.8, PubTime = new DateTime(
阅读全文
摘要:简介 EF Core 提供两种方法来保持 EF Core 模型和数据库架构同步。至于我们应该选用哪个方法,请确定你是希望以 EF Core 模型为准还是以数据库为准。 迁移 如果希望以 EF Core 模型为准,请使用迁移。 在实际项目中,数据模型随着功能的实现而变化:添加和删除新的实体或属性,并且
阅读全文
摘要:简介 Entity Framework Core(EF Core)是微软官方的ORM框架。优点:功能强大、官方支持、生产效率高、力求屏蔽底层数据库差异;缺点:复杂、上手门槛高、不熟悉EFCore的话可能会进坑。 Nuget包推荐 SqlServer:Microsoft.EntityFramework
阅读全文