【发布时间】:2020-05-28 18:01:59
【问题描述】:
我正在尝试基于现有 MySQL 数据库创建 EF 模型。 创建实体后,我使用以下方法对其进行映射:
[Table("databaseName.tableName")] 或:
modelBuilder.Entity<Lang>().ToTable("tableName") 在OnModelCreating。
我遇到的问题是表名可能有意外的前缀。 我想要做的是,在不知道前缀的情况下,搜索数据库中的任何表:
(类似)EndsWith("tableName") 使用它,或者:
哪个名称与Regex 匹配。
这可行吗?另一种方法是向用户询问特定于他/她的数据库的 TablePrefix 并使用它 (modelBuilder.Entity<Lang>().ToTable(prefix + "tableName"),但这很不方便。由于前缀是唯一可以从数据库更改为另一个的东西,因此能够通过名称检测表非常有帮助。
【问题讨论】:
标签: c# mysql entity-framework prefix ef-model-builder