Entity Framework Core 计数表和记录 Code-First Approach (MySQL)
Posted
技术标签:
【中文标题】Entity Framework Core 计数表和记录 Code-First Approach (MySQL)【英文标题】:Entity Framework Core counting tables and records Code-First Approach (MySQL) 【发布时间】:2021-12-24 14:37:33 【问题描述】:我已经开始使用 Entity Framework Core 和 Code-First 方法,目前我还不太习惯。我的 Entity Framework Core 版本是 3.1.20。
问:如何查看某个特定数据库中有多少表可用?
问:如何获取特定数据库中的总记录数?
问:如何获取某个特定表的总记录数?
【问题讨论】:
这些查询似乎都不与实体框架的典型使用真正兼容;在 EF 的上下文中,答案将是“1) 没关系,因为您查询已建模的内容,如果建模的表不可用,您就有问题。” “2)问没有意义,因为 EF 只关心它知道的那些表”和“3)问真的没有意义,但你可以问例如context.Users.Count()
”
【参考方案1】:
问:如何查看某个特定数据库中有多少表可用?
查看this answer
问:如何获取特定数据库中的总记录数?
This answer 可能会有所帮助
var tablesinfo = ctx.GetTablesInfo();
var totalRecordCount = tablesinfo
.IgnoreQueryFilters()
.Sum(ti => ti.RecordCount);
问:如何获取特定表中的总记录数?
var recordCount = ctx.SomeTable.Count();
【讨论】:
以上是关于Entity Framework Core 计数表和记录 Code-First Approach (MySQL)的主要内容,如果未能解决你的问题,请参考以下文章
一列用于 Entity Framework Core 中两个不同表的外键
Entity Framework Core:外键和引用表 Id 列不匹配
使用Entity Framework Core需要注意的一个全表查询问题
将内联表值函数与 Linq 和 Entity Framework Core 一起使用