EF DBFirst,table 从模型中删除

EF DBFirst, table gets removed from model

我的 EF 数据库优先 EDMX 模型中发生了一些奇怪的事情。 我想在数据库中进行一些更改后更新模型。 更新操作删除了未收到任何更改的 table。 table 在模型中存在了很长时间,从未出现过任何问题。

显然,我收到错误 11007:实体类型 'MyTable' 未映射。

我尝试了几种方法:

什么可能导致特定的 table 无法添加到特定的 emdx 模型文件中?这对我来说像是一个错误。

注意。在删除 table 之前,它列在 "Update from DB" 向导的 "Refresh" 选项卡中。

VS 2017 15.4.2(上次更新是在问题出现前一天完成的...?)

编辑 - 更多信息: Table 名为 "DocumentStatuses" 并由两列组成。

CREATE TABLE [cov].[DocumentStatuses](
    [Id] [int] NOT NULL,
    [Label] [varchar](50) NOT NULL,
CONSTRAINT [PK_DocumentStatus] PRIMARY KEY CLUSTERED ( [Id] ASC )
    WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

DocumentStatus 实体将 Id 列映射到枚举。在出现此问题之前它工作正常(但对于其他 2 个实体数据模型它继续正常工作)。

编辑 2

我快被这个错误搞疯了。它突然出现在同一个 edmx 中,另外 5 个 table 彼此没有链接。 我试图用另一个名字创建另一个 EDMX,但它有同样的错误。 我试着一个一个地添加tables,突然,问题出现了。无论我添加 table,模型中存在的其他 5 个都消失了,我得到错误 11007。

如果有人有任何想法,真的很欢迎。

编辑 3

我创建了一个新的解决方案,将我的 table 添加到一个新的实体数据模型中...但问题仍然存在。 EF 拒绝映射 tables。 当我们执行 "Update from database" 时,VS 会创建一些日志吗?.

我将尝试的下一步是创建一个 VM 并在其中尝试。

我"solved"通过重命名数据库中的table问题。 这只是一个解决方法,但这是我能想到的全部。

我创建了 "separator" 个表,其中的名称由 20 个下划线组成。像这样:schema._________________________

所以我在 SSMS 中的模式之间有 "separators"。这些虚拟表当然没有映射。 我删除了它们......问题消失了! 这个 一个错误,我报告了它:

https://github.com/aspnet/EntityFramework6/issues/418