3 c# entity-framework entity-framework-core .net-core asp.net-core
如何在 db 上下文中获取 Entity Framework Core 中所有表的列表?
以下答案适用于 Entity Framework 5 中的先前版本,我们目前使用的是 EF Core 3。
var tableNames = context.MetadataWorkspace.GetItems(DataSpace.SSpace)
.Select(t => t.Name)
.ToList();
Run Code Online (Sandbox Code Playgroud)
我们只想在带有 EF Core 的报告中显示所有数据库。原始 Sql 是select * from sys.tables or information_schema.tables,但是正在寻找 EFCore 方式
数据库中所有表的列表 - 没有。映射到上下文的所有实体的列表以及有关它们的数据库映射(表、列、索引等)的信息 - 当然。您将使用比 EF 更直观的 EF Core 元数据 API。从 的Model属性开始DbContext并探索可用的(扩展)方法。
例如:
var tableNames = context.Model.GetEntityTypes()
.Select(t => t.GetTableName())
.Distinct()
.ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1955 次 |
| 最近记录: |